View Single Post
  #3   (View Single Post)  
Old 20th February 2012
thirdm thirdm is offline
Spam Deminer
Join Date: May 2009
Posts: 234

Originally Posted by daemonfowl View Post
Hi !
Why would an OpenBSD hacker want to try Plan9 ?
What's behind the charm? design ? philosophy? ... is it the same reason why a slackware hacker would want to try OpenBSD ?

I've never actually gotten plan9 running on any of my hardware, so you can take what I say with a grain of salt (I did use acme under inferno for text editing for awhile).

I'd say a Unix fan in general ought to be interested in trying plan 9 because it's what Unix's creators made after reflecting on Unix's deficiencies. The good ideas they had for Unix are further refined in plan 9, as I understand it. More things look like a file for instance. Another example, graphics programming can be done in a way that hides a lot of complexity, so maybe it's not so much more complicated to write graphics programs under plan 9 than terminal programs under Unix. This is very unlike the situation with X on Unix now, where it sounds to me (never done X programming, honestly) like X fails to hide much complexity and throws in some extra of its own devising. Also, some of the random inconsistencies springing up from different people writing different Unix utilities and some of the places where a specialized utility (e.g. head) was made that does something a more general utility (sed) could do almost as simply, things that were alluded to in The Unix Programming Environment by Kernighan and Pike, seem to be corrected (or done differently, depending on your perspective).

Your suggestion that people who like Slackware and find OpenBSD a further improvement along the simple, clean design axis probably has some truth. In my opinion (and yours it seems), of the free Unixes, OpenBSD does as well or better than others at delivering a Unix that's small, simple and intuitive (in as much as that is possible given today's expectations for what must be available). Plan 9 seems yet simpler and cleaner. On the other hand, from what I understand of Unix history, Berkeley always offered, as a benefit over SysV, better usability by adding features and programs that were more fun to use or did things better. So I don't know that all OpenBSD users and developers would necessarily like Plan 9. Maybe instead what they would need is a third party playing the role of Berkeley in the 70s and 80s and adopting Plan 9 to add neat stuff to it to make it fit better into the current computing landscape and to throw in some cool features that the more staid Plan 9 designers might reject for not being worth the extra complexity in the implementation.

For myself (not a hacker just a user), at times I start to convince myself that I want to make Plan 9 my system of choice. This is putting the cart before the horse, of course, since I would need to use it awhile to really judge, and I've never succeeded at installing it on any machine I own, as I mentioned. But aside from that there are some sacrifices I'd be making that dampen my enthusiasm:
1. no C++ compiler
2. no Common Lisp compiler
3. I think not even a Scheme compiler (maybe a small one doing only R4RS?)
4. no emacs -- this may be an interesting switch, actually -- going plan 9 for me would mean acme (but then I'd need a good mouse for the frigging chording -- what do laptop users do?) plan 9 people seem to think emacs an atrocity in a similar way to roughly 7/8 of OpenBSD users. Maybe they know something I don't.
5. web browsing would be a pain. It seems like they have some incomplete browsers with the rough functionality of a dillo or w3m, but nothing like firefox or chrome, or even an xxxterm, netsurf or midori.
6. The perl that's available lags quite a bit I think. I see a page mentioning 5.8.0. I'm out of Perl right now, but when you're in Perl it's better to be all in and keeping up with the latest idioms, the sort of things people like chromatic advocate, in my opinion. That requires an up to date interpreter.

So I imagine myself doing this and making my application language ML (fun change for me in a way, but there goes all this time I've been spending learning Lisp and a huge part of my life I've committed to C++), using awk and rc instead of Perl, and doing any lower level stuff in C (and a non-ISO version of it at that) instead of C++. I dunno, I like the idea of exposing myself to good design -- the simplicity and all that. But it sounds like a bit of a hairshirt. Similar, but not quite as drastic, to running Oberon as my system (something I've also felt a slight pull towards from reading about Niklaus Wirth but will probably never do).

This is too long already (sorry, it's a subject I keep coming back to), but one more thing. If you watch the ports mailing list, you'll see there are certain porters who seem to have an enthusiasm for plan 9 or plan 9 influenced software. Some of these ports come from this site and you may want to try them out: IMO, it's interesting (and healthy?) to contrast these kinds of design esthetics with those from other groups, e.g. Lisp programmers:
Reply With Quote