357 karma · joined July 15, 2011
0xdfdf2f
That's a strange way to describe research and experimentation (though not strictly incorrect).
>I just wished they focused on making the mainstream better
Plan 9 predates all of today's mainstream operating systems.
† I tried answering that question myself, but your program kept crashing.
http://spinroot.com/pico/index.html
Instead of find, I run /bin/test on a list of files. For anything more complicated than what test can handle, I use Inferno's fs program.†††
† http://swtch.com/cgi-bin/plan9history.cgi?f=1999/0323/port/c...
†† http://a-30.net/inferno/man/4/trfs.html
††† http://www.vitanuova.com/inferno/man/1/fs.html It has a misleading name. It is not a file server.
Plan 9 has all of those things. Namely 7l† and mk††.
http://research.swtch.com/generic
http://commandcenter.blogspot.com/2011/12/esmereldas-imagina...
I am inclined to agree with them. I like writing Go programs quickly, but not at the expense of compilation speed† or execution speed. The point of Go is to be fast. If I valued programming speed for a particular program, then I would use the right tool for the job and choose a language other than Go.
† Though considering the speed of Plan 9-style compilers, I can't imagine at what scale this would begin to be a problem.
The opposition to the war was pretty quick already, coming at least three months before the invasion began.
http://www.nytimes.com/2002/12/11/us/threats-responses-disse...
http://query.nytimes.com/search/query?query=iraq+war+protest...
Rc's path variable allows you to easily tell rc to check the current directory when looking for programs to exec. Doing that with bind after each cd would be clumsy. And if your working directory is a remote server, you can set path to just /bin so that you aren't statting the remote directory before each exec. Inferno's sh does use a path variable, but it is typically left unset and the default (/dis .) is used.††
† See http://plan9.bell-labs.com/sources/plan9/sys/src/ape/lib/ap/...
†† See /usr/inferno/appl/cmd/sh/sh.b:/^runexternal
; grep --version
GNU grep 2.6.3
; echo A | LANG=en_US.utf8 grep '[a-z]'
A hyphen < input | layout | topostscript
where hyphen inserts all possible hyphens, and layout discards those which are unnecessary. pic challenge-accepted.ms | tbl | eqn | troff -ms term% wc /sys/src/cmd/^(tr.c sort.c uniq.c sed.c)
356 998 5993 /sys/src/cmd/tr.c
1752 4526 28371 /sys/src/cmd/sort.c
165 346 2185 /sys/src/cmd/uniq.c
1455 4267 26848 /sys/src/cmd/sed.c
3728 10137 63397 total
term% wc <{man tr} <{man sort} <{man uniq} <{man sed}
54 269 2028 /fd/8
137 741 5542 /fd/7
41 149 1225 /fd/6
208 1078 8464 /fd/5
440 2237 17259 totalScrutinizing an idea for a new method of programmer-computer interaction from the perspective of a newcomer makes little sense to me, as does the "competing standards" thing from a neighboring comment, scrutinizing OP's idea for being potentially unable to win a popularity contest. OP's terminal system isn't a standard struggling to gain widespread public acceptance. It's just some guy's program.
I think that an idea about programmer-computer interaction ought to be scrutinized for its merit in facilitating programmer-computer interaction, and that criticism from a perspective that isn't the programmer's and isn't the computer's is useless.
PS. You forgot one of the most interesting Unix shells, es. It could turn out to be the best shell you've ever used.
The question is "which is bigger: the Earth or the Sun?". It doesn't specify how to measure big, so when answering the question I decided to consider angular size and answered that the Earth is the larger of the two.
13 pages of the 80 page manual are devoted to readline and programmable completion. Readline and programmable completion could be removed from the shell, and their functional equivalents moved to a more logical place in the terminal emulator. Plan 9 does this, and it works well, and people seem to like it and the flexibility it gives.
24 pages are devoted to builtin commands, many of which are unnecessary duplicates of regular commands, and several unnecessary altogether.
3 pages are about weird parameter expansions, all of which can be done more intuitively with sed, except for the array one, which can be done with awk.
And there are many smaller things as well, like biffing or arithmetic evaluation, which can be done with dc or whatever. You could try moving history out of the shell and into the terminal emulator as well.