Live data from Hacker News

What Is Not in Plan Nine (2012)

wiki.c2.com

21–30 of 42 posts

Re: What Is Not in Plan Nine (2012)

#21
post #18

A browser that supports JavaScript. This appears to be one of those sites that should ostensibly be just static text, but the source has none of the content and not even Google's text-only cache manages to show anything. Rather ironic this page is itself inaccessible to users of Plan9...

It used to be a very simple static website, and much more likely than not was just that at the time people were writing to the wiki Like last year or something they apparently decided to migrate to this mess of a system, for reasons unknown to me. I think it might be mediawiki software?

> I think it might be mediawiki software?

What? Wikipedia uses MediaWiki, and it looks nothing like that.

It's also functional without JavaScript.

Re: What Is Not in Plan Nine (2012)

#22
post #13
post #12

Earlier quoted context omitted.

I would guess not, given how the article notes later on that "cp" has no recursion flag: > Imagine how many separate Unix commands have the TreeWalking built into them... RefactorMercilessly. And suggests the following shell script instead: #!/bin/rc switch ($#*) { case 2 @{ cd $1 && tar c . } | @{ cd $2 && tar x } case * echo usage: dircp from to >[1=2] } Which is horrifying (how would you ever figure out what " $#*…

> (how would you ever figure out what " $#* " means?) It's in the manual. > Now where did that @#!$ sysadmin put it? The point of Plan 9 is that you don't rely on the sysadmin to put things places for you. You'd mount your home filesystem from wherever it lives and everything would be back to where you expect it. You could even mount /bin from whatever machine you wanted. Plan 9 does not work in pieces. It only works…

> You could even mount /bin from whatever machine you wanted.

Neat! Now my system is completely unusable if another computer is down or unreachable!

And to think people around here bad-mouth cloud computing.

Re: What Is Not in Plan Nine (2012)

#23
> vi, emacs, ...

>> Try acme or sam.

The idea that your OS determines your text editor is fundamentally broken.

The idea that your OS determines your GUI model is also fundamentally broken.

Both of those notions destroy loose coupling, which is a fundamental design principle.

And this...

> objects

>> BellLabs didn't need them since the complexity is back under control.

... is really too incoherent to refute.

Re: What Is Not in Plan Nine (2012)

#24
post #16

Earlier quoted context omitted.

> Motif was a giant sack of crap, but you could make an application that was roughly identifiable as a "computer application" of the time to a non-technical user, and even customize/internationalize it (more or less). Motif is also not part of X11. If you want something vaguely like it, there's libcontrol which is used by a few applications. Nothing about rio prevents something even thicker from being written (or som…

"other than a strong distaste for that kind of gui" I would suspect that the process of writing a full-fledged windowing system and graphics layer that people might recognize as behaving roughly like a modern computer (even running a web browser, yet), while holding true to the Plan 9 Received Wisdom, would be a intriguing journey of discovery for someone. Whether they would emerge as a true believer with their faith…

There's really nothing preventing anyone from implementing what you're talking about. Some of it's already been done, and undone, at various times.

Rio (well, devdraw, really) presents a similar drawing model to Xrender -- in fact, Plan 9's draw is listed directly as the inspiration for Xrender. If you want a fancy GUI, nuklear is ported (https://github.com/vurtun/nuklear, https://bitbucket.org/mischief/libnuklear/src/default/).

Porting GTK would be similarly doable, all that's really needed is getting a GDK port to do the window management, and porting pixman and cairo for the drawing. I'm not aware of anything that devdraw+rio is missing for a working implementation.

And, if you really want, there were multiple ports of X11 to plan 9 that could be revived -- Equis, for example, , so you could in theory just get did of Gnu-isms, revive one of those unused bits of code, and run it that way.

Again, there are existence proofs -- nothing about plan 9 prevents any of what you're talking, other than the people using plan 9 don't want it, and the people that want it don't want plan 9, or are almost entirely "ideas people" that aren't going to contribute a line of code towards making what they want work.

Web browsers are a different story. The problem with a web browser is that a modern web browser is tens of millions of lines of code to implement a turd that's churning at an incredible rate; Last I looked, Chrome was 20 million lines of code, and needed upwards of 600 substatial out-of-tree patches to even build on BSD. And my bank's website breaks on versions below 70 or so, which means running constantly just to stay with a working version.

We don't have resources to maintain that shit.

For a while, there was 'linuxemu', which emulateds the linux syscall ABI, but even that had a ton of churn, and nobody put in the effort to keep up to date.

Given that plan 9 is all volunteer driven (especially today), if nobody writes the code, nothing happens.

> Whether they would emerge as a true believer with their faith strengthened by this trial, or as a Plan 9 heretic, would be an interesting question.

The question is "what do you want out of this"? To me, this sounds like an awful lot of pointless work that makes the system quite a bit less pleasant, with code that's too big to really understand and easily debug, and a UI model that I don't even use regularly on Unix if I can avoid it. It gives me the same reaction as someone proposing making Linux compatible with MVS (IBM's mainframe operating system), complete with JCL and the data set file system.

Re: What Is Not in Plan Nine (2012)

#25

A browser that supports JavaScript. This appears to be one of those sites that should ostensibly be just static text, but the source has none of the content and not even Google's text-only cache manages to show anything. Rather ironic this page is itself inaccessible to users of Plan9...

Try: http://c2.com/wiki/remodel/pages/WhatIsNotInPlanNine There is a JSON representation, and you could presumably write your own parser for the c2 wiki syntax, in whatever programming language you want to do. (They could make the to tell you that you can either enable JavaScript or you can access it under http://c2.com/wiki/remodel/pages/ and parse it yourself.)

curl -s http://c2.com/wiki/remodel/pages/WhatIsNotInPlanNine | jq -r .text

works and is GoodEnough

Re: What Is Not in Plan Nine (2012)

#26

I'm not sure I follow the argument about symbolic links. What do they have to do with the root UNIX thinking that it owns the whole filesystem? I don't often see symlinks used in the context of crossing "imported" (mounted?) parts of the filesystem - instead, I use them most often to provide aliases so that the same file/directory can be accessed with multiple names.

If you want the same thing to have multiple names you can just use a hard link. Symlinks are a broken idea in Plan9 because whether they’re relative or absolute they may not point to the same thing depending on how you have your namespace set up.

In plan9 each user has their own set of bound file systems (like mounts, but for users not the system as a while), and so has their own logical view of the local and remote file systems, applications, devices, and so on, all presented as a file system rooted at /. It’s a very powerful and elegant design. Symbolic links are kind of stupid and broken in that context.

Re: What Is Not in Plan Nine (2012)

#27
post #21
post #18

Earlier quoted context omitted.

It used to be a very simple static website, and much more likely than not was just that at the time people were writing to the wiki Like last year or something they apparently decided to migrate to this mess of a system, for reasons unknown to me. I think it might be mediawiki software?

> I think it might be mediawiki software? What? Wikipedia uses MediaWiki, and it looks nothing like that. It's also functional without JavaScript.

I’m thinking of whatever is used for every wikia site

Re: What Is Not in Plan Nine (2012)

#28

I'd say that emacs would be the main thing missing for me.

As an Emacs user myself, I share your pain.

You will find the following Easter egg in the distribution, though:

  term% man 1 emacs

     EMACS(1)                                                 EMACS(1)

     NAME
          emacs - editor macros

     SYNOPSIS
          emacs [ options ]

     DESCRIPTION
          This page intentionally left blank.

     SOURCE
          MIT

     SEE ALSO
          sam(1), vi(1)

     BUGS
          Yes.
http://man.cat-v.org/plan_9/1/emacs

Re: What Is Not in Plan Nine (2012)

#29
post #23

> vi, emacs, ... >> Try acme or sam. The idea that your OS determines your text editor is fundamentally broken. The idea that your OS determines your GUI model is also fundamentally broken. Both of those notions destroy loose coupling, which is a fundamental design principle. And this... > objects >> BellLabs didn't need them since the complexity is back under control. ... is really too incoherent to refute.

You have to bare in mind the era Plan 9 was released in. The concepts of decoupling the OS from your choice of user space tools is actually quite a modern one. Back in the 89s and 90s things were a lot more fragmented. You had a whole plethora of home computers, from 8bit micro computers, whose implementation of BASIC were largely incompatible with each other, through to entirely different designs of personal computers (back when PC didn’t just mean “IBM compatible”). So machines like Atari ST/Falcon, Amiga’s various machines, Apple Macintosh/Lisa/etc, Acorn Electron et al. Even on the IBM PC, there wasn’t really the breadth of choice that there is now.

So people did choose their OS based on what software why wanted to run.

Even in the enterprise space things were more fragmented with less compatibility across the various UNIXes and Linux wasn’t really a viable option until the late 90s.

It’s very easy to judge Plan 9 through the perspective of modern ideals and the expectation of POSIX everywhere but that wasn’t the case when Plan 9 was written. For its era, Plan 9 is has a number of very pioneering concepts.

Re: What Is Not in Plan Nine (2012)

#30

A browser that supports JavaScript. This appears to be one of those sites that should ostensibly be just static text, but the source has none of the content and not even Google's text-only cache manages to show anything. Rather ironic this page is itself inaccessible to users of Plan9...

When he took down the c2 wiki I believe it was discussed on HN. I could have sworn this "remodel" site was supposed to be a temporary solution while he moved to a new server.

http://c2.com/wiki/remodel/pages

   hget http://c2.com/wiki/remodel/pages/WhatIsNotInPlanNine | awk -f prettyprintjson.awk > WhatIsNotInPlanNine.txt
   links WhatIsNotInPlanNine.txt
Post reply on HN