6 comments

[ 2.8 ms ] story [ 19.3 ms ] thread
I've been a casual observer of plan9 and inferno-os for more than a couple of years, and while I understand why there is not a great deal of mainstream support, it would be nice to see things like acme live and grow on more of the standard platforms.
Although it has little recent activity and could be bitrotted to uselessness, there is a standalone acme package for various other systems:

http://code.google.com/p/acme-sac/

nod -- I appreciate you posting this link. I forgot about it. It seems to me the single greatest failure of acme, inferno, etc. is a lack of mainstream support. We have vim vs emacs today, but part of me always wonders about what the landscape would look like if acme was taken seriously by the programming community and actively maintained. It's too bad Limbo is so archaic.
Apparently Limbo wasn't too archaic for the Go guys--take a look at Limbo, then take a look at Go, and you'll find that the two are incredibly similar. Of course, if you consider the people who started Go in the first place, it's not that surprising!

I think one reason Acme never really took off was the same reason people go around using xterms with green text on a black background--sure, it's not especially easy to read, but by god it is haxxor l33t. Acme has about two keyboard combo commands (^a and ^e, to go to the start or end of a line) and expects you to select text, move frames, and set the insertion point with the mouse, and the mouse is definitely Not Cool, even if it means you have to hammer on C-n, C-p, C-f, C-b to get that cursor where you want it.

I periodically run this for a while and try really hard to like it. Plan 9 is a true work of genius in some ways but is really insular, and I just don't like acme (ironic, because I was a big wily fan about ten years back). Plan 9 in general and this port is no exception is the sort of thing that works best if you buy into it wholesale; 9term and rc look incredibly primitive until you run them both (and avoid anything that sends console commands...), I have never figured out how to get a preexisting ssh key into factotum, it is surprisingly difficult to get the plumber to work with programs that were not written to make it easy (simple example: make plumbing work for emacs), and others.

Still genius, and I'm glad this is still supported for when I feel like wearing the hairshirt.

I installed this stuff recently, after playing with Inferno for a while. I couldn't get Plan 9 to boot on real hardware or in qemu until a couple of years ago, but once I got up and running, the documentation was a little less than satisfactory (there are man pages and research papers, but not many "getting started with X" or "how to do Y"; maybe I've been spoiled by Linux, where howto's have been prolific for 15 years).

acme is really cool, even moreso now that there is Linux kernel support for 9P2000, so you can mount acme's filesystem and write programs in any language that does I/O to do arbitrary things to windows and text. rc is also the nicest shell I've ever used.

Plan 9 has always been a research OS (although I wonder if, had it been opened up at the right time instead of staying at Bell Labs, we might all be using it now). But the ideas in it are gradually making their way to the rest of us, which is what I'm really excited about. Things like the aforementioned 9P2000 support in Linux, libixp, wmii's use of 9P for scripting, and even Inferno are pretty nice. (Can you imagine if all of those horrid, monolithic GTK/Qt /Cocoa apps were as scriptable as acme is? Even the ones that give you a scriping language pale in comparison.)

Although I don't really use Plan 9, having the ports around has been great for showing to people what I get so excited about (although that's just a fraction), and the 9fans mailing list is possibly the best one I'm subscribed to. You hear more on that list about interesting software architecture and UI design than I thought possible. It's a great place to lurk.