[FoRK] Should Exist: a new UNIX shell

Jeff Bone <jbone at place.org> on Sat Jun 2 19:39:14 PDT 2007

Venture philanthropy --- giving away the ideas... ;-)


UNIX needs a new shell.

It's an embarrassment that Monad (aka msh, aka PowerShell) now  
represents the shell state-of-the-art --- the current crop of UNIX  
shells is far too long in the tooth.  Jettison POSIX compatibility,  
it's an albatross at this point.  A new shell should have:

   * much saner quoting rules, scoping, and more consistent syntax  
overall (cf. fish, es)
   * higher-order functions and first-class blocks / closures (cf. es)
   * data structures and a rich set of literal syntaxes for (lots of)  
common data types (cf. rebol)
   * the ability to pass data structures through pipes (cf. Monad)
   * a module system, with on-the-fly code replacement (cf. Erlang)
   * decent math abilities
   * (perhaps) lightweight concurrency in-the-shell (cf. Erlang)
   * much more reflection / introspection (cf. es)
   * more orthogonality (cf. fish)
   * more usability focus (cf. fish - but lose the UI, leave that  
   * a portable and higher-level set of abstractions than just libc  
(cf. AT&T's astlib)
   * possibly also dialects / extensible meta-syntax (cf. rebol)
   * json as universal marshalling syntax, maybe + atoms?

Inspirations:  Monad, es, Inferno's sh, rc, ksh, fish (both the  
Perlish research shell of that name and the "Friendly Interactive  
Shell"), rebol, awk, tcl;  also Plan 9 / Plan B, AT&T Research's  
astlib work and 3DFS, the JXTA *idea* (if not execution) and Erlang  
to a lesser degree.


More information about the FoRK mailing list