MIT 6.001

Tue, 10 Nov 1998 16:48:03 -0500 (EST)

On Tue, 10 Nov 1998, James A. Crippen wrote:
> PR1ME terminal I once worked on) amongst other terminak-lossage.  The
> input system of scsh is still wanting much refinement IMHO, and should
> find some way to integrate the GNU readline library for all those nifty
> command line editing features.. . . Time to print out the
> bash source and see how they do it, I suppose.

readline is GPLed; if you link readline into MIT Scheme, MIT Scheme
must be GPLed (or licensed under a less restrictive license than the
GPL).  I am not aware of whether this is the case.

getline might be a possible alternative (IIRC it comes with ncftp; its
major loses compared with readline are (a) only horizontal scrolling,
no linewrap capability, and (b) no vi mode.)  I can't remember its

>  . . .Maybe I'm wrong, but as I said I'll look it up.  Some
> stripping of parens is in order if scsh is going to be useful as an
> interaction shell, as most people dont want to type
> * (list-directory ".")
> or similar to get things done.

Have you looked at REBOL?  It's an almost-dialect of Lisp that
dispenses with almost all parentheses by making all of its functions
fixed-arity, and doing a couple of other slightly weird things:

- in normal Lisp, you have just the name of a symbol and its value (and
in non-Scheme recent Lisps, you have its functional value, too).  REBOL
has the name of the symbol ("word"), its value, and its "natural
interpretation" --- which is either executing it as a function, using
the next few things that follow it for its arguments.

So if you want to make a copy of a cons cell X (although REBOL doesn't
have cons cells) you can write:

cons car x cdr x

I guess this means you write backward M-expressions --- the normal
M-expression would be:

x cdr x car cons

[] take the place of normal Lisp parentheses; () only group, and are
only useful within infix expressions.


<>       Kragen Sitaker     <>
Irony and sarcasm deflate seriousness, and when your seriousness becomes detum-
escent, you're not held responsible for your thoughts. Irony beats thinking like
rock beats scissors. --