From: Rainer Joswig
Subject: portable top-level ?
Date: 
Message-ID: <joswig-F1AE5C.10424824092007@news-europe.giganews.com>
I was just thinking about that - triggered by the newbie discussions.

Is there a portable top-level REPL for Common Lisp?


It should:

* be portable across implementations
* should be usable in a 'raw' terminal
* should do error handling and provide interactive restarts
  in a unified way
* should include a simple debugger REPL
* should provide input editing (cut, copy, paste, backwards, delete, ...)
* should provide some 'commands'
** for dealing with files
    like 'cd' or 'Change Directory', 'cat' or 'Show File'
* should have a simple help facility
* might be able to display simple menus and dialogs,
  for, say, setting preferences 

It should not

* require Emacs
* require GNU's readline

I saw this one:
http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/io/tl/0.html
But it does not, for example, provide input editing.

Right now, most Common Lisp implementations have their own, different,
REPL implementations.

Any ideas?

-- 
http://lispm.dyndns.org

From: Pascal Bourguignon
Subject: Re: portable top-level ?
Date: 
Message-ID: <87wsugkpjr.fsf@mini.informatimago.com>
Rainer Joswig <······@lisp.de> writes:

> I was just thinking about that - triggered by the newbie discussions.
>
> Is there a portable top-level REPL for Common Lisp?
>
>
> It should:
>
> * be portable across implementations
> * should be usable in a 'raw' terminal
> * should do error handling and provide interactive restarts
>   in a unified way
> * should include a simple debugger REPL
> * should provide input editing (cut, copy, paste, backwards, delete, ...)
> * should provide some 'commands'
> ** for dealing with files
>     like 'cd' or 'Change Directory', 'cat' or 'Show File'
> * should have a simple help facility
> * might be able to display simple menus and dialogs,
>   for, say, setting preferences 
>
> It should not
>
> * require Emacs
> * require GNU's readline
>
> I saw this one:
> http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/io/tl/0.html
> But it does not, for example, provide input editing.
>
> Right now, most Common Lisp implementations have their own, different,
> REPL implementations.
>
> Any ideas?

I've posted a REPL that is portable, but lacking a lot of the above features ;-)

If 'cd' = *default-pathname-defaults* then there is no problem in
providing it, otherwise it may restricts the portability (in absolute;
in practice perhaps you only want portability amongst implementations
targeting POSIX systems or similar).

Provinding input editing is even harder to do portably, since we don't
have access to the raw terminal from CL.  Again, we can be portable
only amongst implementations providing some API to do that.

What's wrong with GNU readline?  ( :-P )

I would like to answer that for newbies, we could just design a nice
environment on one implementation.  And once they're not newbie
anymore, let them venture to other wild implementations.


-- 
__Pascal Bourguignon__                     http://www.informatimago.com/
From: George Neuner
Subject: Re: portable top-level ?
Date: 
Message-ID: <7q5gf39v56c9s9hgb993in9k2h2i7e4dpo@4ax.com>
On Mon, 24 Sep 2007 18:15:36 +0200, Pascal Bourguignon
<···@informatimago.com> wrote:

>Rainer Joswig <······@lisp.de> writes:
>
>> Is there a portable top-level REPL for Common Lisp?
>

>Provinding input editing is even harder to do portably, since we don't
>have access to the raw terminal from CL.  Again, we can be portable
>only amongst implementations providing some API to do that.

This is perhaps, a stupid question ... but would you need anything
more than curses?


>What's wrong with GNU readline?  ( :-P )

You mean besides the infectious GPL?
[I have nothing against free software but the GPL (particularly the
latest version) strikes me as counter productive.  "Free" should mean
"no strings attached".]

George
--
for email reply remove "/" from address
From: Ray Dillinger
Subject: Re: portable top-level ?
Date: 
Message-ID: <46f93cac$0$27170$742ec2ed@news.sonic.net>
George Neuner wrote:

> [I have nothing against free software but the GPL (particularly the
> latest version) strikes me as counter productive.  "Free" should mean
> "no strings attached".]


I've noticed an inconsistency on that score, BTW:

SBCL has been identified both as a "public domain" common lisp
implementation, and as a "GNU licensed" common lisp implementation.

Does anybody know, FOR SURE, which assertion is true, and why the
issue has been confusing enough for both to be made?

Is this a public-domain implementation with some little GNU
add-on that can be removed, or what?

					Bear
From: Fred Gilham
Subject: SBCL license status (was Re: portable top-level ?)
Date: 
Message-ID: <u7r6kmzg1c.fsf_-_@snapdragon.csl.sri.com>
The following link seems to clarify the issue.

   http://sbcl.sourceforge.net/history.html

-- 
Fred Gilham                                  ······@csl.sri.com
One of the authors of the Daniel Bell volume says, in horror and
astonishment, that the radical right intends to repeal the twentieth
century. Heaven forfend! Who would want to repeal the twentieth
century, the century of horror, the century of collectivism, the
century of mass destruction and genocide, who would want to repeal
that!                                           -- Murray Rothbard
From: George Neuner
Subject: Re: portable top-level ?
Date: 
Message-ID: <bcjif3hcu6n2a9hpbeinne4686fto8ff4h@4ax.com>
On Tue, 25 Sep 2007 09:58:01 -0700, Ray Dillinger <····@sonic.net>
wrote:

>George Neuner wrote:
>
>> [I have nothing against free software but the GPL (particularly the
>> latest version) strikes me as counter productive.  "Free" should mean
>> "no strings attached".]
>
>
>I've noticed an inconsistency on that score, BTW:
>
>SBCL has been identified both as a "public domain" common lisp
>implementation, and as a "GNU licensed" common lisp implementation.
>
>Does anybody know, FOR SURE, which assertion is true, and why the
>issue has been confusing enough for both to be made?
>
>Is this a public-domain implementation with some little GNU
>add-on that can be removed, or what?
>
>					Bear

According to the license section of the web site and the COPYING file
in the source, the SBCL _compiler_ is a mixture of public domain and
BSD licensed code.  That would make the compiler "no strings" free.  

To be safe (and to satisfy your IP attorney), I think you'd have to go
through the source of the version you use and make sure there are no
files with a more restrictive license.

Libraries are what they are - the SBCL team makes no claims for them.
Same advice goes ... even if the library claims PD or free license,
you have to check the source, file by file, to be certain.

George
--
for email reply remove "/" from address
From: Juho Snellman
Subject: Re: portable top-level ?
Date: 
Message-ID: <slrnffih46.86d.jsnell@sbz-30.cs.Helsinki.FI>
Ray Dillinger <····@sonic.net> wrote:
> I've noticed an inconsistency on that score, BTW:
>
> SBCL has been identified both as a "public domain" common lisp
> implementation, and as a "GNU licensed" common lisp implementation.

Do you rememeber where you've seen it claimed as GPL licensed? It'd be
good to correct the information.

> Does anybody know, FOR SURE, which assertion is true, and why the
> issue has been confusing enough for both to be made?
>
> Is this a public-domain implementation with some little GNU
> add-on that can be removed, or what?

The COPYING file in SBCL should be clear about this. It's mostly under
the public domain, with some bits having BSDish licenses that have no
advertising clause. No GPL or LGPL code is included in the
distribution, and is extremely unlikely to ever be included in the
future.

-- 
Juho Snellman
From: Thomas F. Burdick
Subject: Re: portable top-level ?
Date: 
Message-ID: <1190660968.788116.250590@k79g2000hse.googlegroups.com>
On Sep 24, 10:42 am, Rainer Joswig <······@lisp.de> wrote:
> I was just thinking about that - triggered by the newbie discussions.
>
> Is there a portable top-level REPL for Common Lisp?
>
> It should:
>
> * be portable across implementations
> * should be usable in a 'raw' terminal

I'm with you 100%: this is exactly what LISP needs to be relevant and
accessible to newbies if we want to survive into this new era of
timeshare systems and minicomputers.  We'll take the 70's by storm!