Similar resources for Lisp/Scheme

I know this is terribly off-topic, but . . .

What resources can youse guys recommend for Common Lisp and/or Scheme?
In particular, I’m looking for community-related websites, mailing
lists, and generally accepted Good Resources available for free on the
Internet. Feel free to email me off-list if you think this is too
off-topic to address here.

Chad P. wrote:

I know this is terribly off-topic, but . . .

What resources can youse guys recommend for Common Lisp and/or Scheme?
In particular, I’m looking for community-related websites, mailing
lists, and generally accepted Good Resources available for free on the
Internet. Feel free to email me off-list if you think this is too
off-topic to address here.

Well … in the Open Source world there are four major Common Lisps:
CMUCL, Clisp, GCL and SBCL. Google will get you the rest of the way. All
run on Linux and a couple of them run on Windows and possibly Macs.

If I had to pick one of the four, it would be SBCL. It’s the youngest of
the four, a cleanup/rewrite of CMUCL with a quite vigorous community.

I don’t know all that much about Scheme other than the linguistic
differences between Scheme and Common Lisp. The most
commonly-encountered open source Scheme is Guile. Scheme48 and DrScheme
are two others that I’ve installed, but I’m not a member of any Scheme
communities so I can’t really compare them. If you have a modern Linux
distro (or CygWin) you probably have Guile already.

On Tue, Sep 05, 2006 at 09:43:28AM +0900, M. Edward (Ed) Borasky wrote:

Well … in the Open Source world there are four major Common Lisps:
CMUCL, Clisp, GCL and SBCL. Google will get you the rest of the way. All
run on Linux and a couple of them run on Windows and possibly Macs.

I was looking at CMUCL with interest before you sent this, but . . .

If I had to pick one of the four, it would be SBCL. It’s the youngest of
the four, a cleanup/rewrite of CMUCL with a quite vigorous community.

. . . this has prompted me to take a second look at SBCL. Is it
entirely backward-compatible? Does it provide the same additional
functionality (debugger, et cetera)? How, technically, do CMUCL and
SBCL differ, in general?

I ask in case you have the answers off the top of your head. If not, no
biggie – I’m on my way to look up more information about SBCL so I can
compare them now.

I don’t know all that much about Scheme other than the linguistic
differences between Scheme and Common Lisp. The most
commonly-encountered open source Scheme is Guile. Scheme48 and DrScheme
are two others that I’ve installed, but I’m not a member of any Scheme
communities so I can’t really compare them. If you have a modern Linux
distro (or CygWin) you probably have Guile already.

I do have Guile installed, though only because I intentionally installed
it about a year ago. I make a point of knowing what’s on my computer,
which means doing minimal installs rather than default kitchen sink
desktop installs, then building from there via the package manager. As
such, there wasn’t any default Guile installation.

Speaking of communities – do you know of any mailing lists akin to
ruby-talk, or open community websites akin to PerlMonks? What about
beginner mailing lists? Extensive searching has turned up exactly one
general-purpose Common Lisp mailing list thus far, and I don’t know
anything about the list yet beyond that.

quoth the Chad P.:

I know this is terribly off-topic, but . . .

What resources can youse guys recommend for Common Lisp and/or Scheme?
In particular, I’m looking for community-related websites, mailing
lists, and generally accepted Good Resources available for free on the
Internet. Feel free to email me off-list if you think this is too
off-topic to address here.

For scheme:
http://schemers.org/ is an excellant source to start with, and #scheme
on
freenode is full of friendly, helpful people.

Personally, I have been using the video lectures[1] and online
textbook[2]
from the first year MIT Comp-Sci course “Structure and Interpretation of
Computer Programs” which is taught entirely in scheme to, well, teach
myself
scheme…might be too slow if you already have the compsci basics down.

If you want a whole IDE sort of thing for scheme then drscheme is a good
choice, if you are more like me and just want a console interpreter then
the
best I have found is gambit, which has readline support and command
history
much like irb. mzscheme, chicken, guile, and others don’t have the
readline
support, which makes them tedious to experiment with.

[1] http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/
[2]
http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%_toc_start

-d

On Tue, Sep 05, 2006 at 09:56:36AM +0900, darren kirby wrote:

http://schemers.org/ is an excellant source to start with, and #scheme on
freenode is full of friendly, helpful people.

That’s good to know. I usually try to avoid public IRC channels unless
someone indicates that it’s “full of friendly, helpful people” or
something to that effect, since IRC channels are all too often full of
combative, ornery people. Now that I’ve gotten a good review of #scheme
I’ll actually give it a shot.

Personally, I have been using the video lectures[1] and online textbook[2]
from the first year MIT Comp-Sci course “Structure and Interpretation of
Computer Programs” which is taught entirely in scheme to, well, teach myself
scheme…might be too slow if you already have the compsci basics down.

In my experience, having the CS basics down does not mean going over
them again in a new language is a waste of time. I’m sure I’ll learn
something new (in addition to Scheme).

If you want a whole IDE sort of thing for scheme then drscheme is a good
choice, if you are more like me and just want a console interpreter then the
best I have found is gambit, which has readline support and command history
much like irb. mzscheme, chicken, guile, and others don’t have the readline
support, which makes them tedious to experiment with.

Thanks. I was familiar with drscheme, mzscheme, and guile before today,
but gambit’s a new one on me. I’ll have a look.

Chad P. wrote:

. . . this has prompted me to take a second look at SBCL. Is it
entirely backward-compatible? Does it provide the same additional
functionality (debugger, et cetera)? How, technically, do CMUCL and
SBCL differ, in general?

I ask in case you have the answers off the top of your head. If not, no
biggie – I’m on my way to look up more information about SBCL so I can
compare them now.

I’m not sure about compatibility. CMUCL is Carnegie-Mellon University
Common Lisp and SBCL is Steel Bank Common Lisp. Carnegie made his money
in steel and Mellon made his money in banking, you see …

CMUCL is kind of big and unwieldy and difficult to extend, so SBCL arose
to attempt to make things a little more “agile”, if you will. For
example, there’s probably no hope of a Windows port of CMUCL, but there
is one for SBCL.

As far as application speed is concerned, it’s sort of a horse race
between GCL and CMUCL. GCL wins some benchmarks, CMUCL wins some, and
some are too close to call. Clisp is probably the most portable of the
bunch – it runs on nearly every UNIX and is installed with CygWin. I
think there is a native Windows port too.

Speaking of communities – do you know of any mailing lists akin to
ruby-talk, or open community websites akin to PerlMonks? What about
beginner mailing lists? Extensive searching has turned up exactly one
general-purpose Common Lisp mailing list thus far, and I don’t know
anything about the list yet beyond that.

Well … I was on the CMUCL and SBCL developers’ lists a while back, but
I don’t think I’ve ever frequented a “Lisp Beginners” mailing list. I’d
start with “comp.lang.lisp” if you can stand the fact that most Lispniks
think there really isn’t another real programming language.

I believed that myself a long time ago, until I discovered nobody was
paying people to code in Lisp but Fortran and assembler would earn you a
decent living.

I also think a PDF of most of the book “Practical Common Lisp” is on
line somewhere. I went and bought a hard copy anyway. It tells you how
to do 21st century stuff like web servers in Lisp. :slight_smile:

On Tue, Sep 05, 2006 at 04:43:12PM +0900, Chad P. wrote:

I seem to recall reading somewhere that GNU CLISP runs in something
absurd like 16MB of RAM – a simply astoundingly small amount of memory.
That’s a pretty neat trick for an ANSI standard implementation of pretty
much anything.

I misremembered. It wasn’t that it ran on a computer with 16MB (or
whatever) of RAM, but that it required only 2MB of free RAM to run. Mea
culpa.

On Tue, Sep 05, 2006 at 01:01:14PM +0900, M. Edward (Ed) Borasky wrote:

I’m not sure about compatibility. CMUCL is Carnegie-Mellon University
Common Lisp and SBCL is Steel Bank Common Lisp. Carnegie made his money
in steel and Mellon made his money in banking, you see …

I was not aware of that connection for the name of SBCL. Wow, that’s
amusing.

CMUCL is kind of big and unwieldy and difficult to extend, so SBCL arose
to attempt to make things a little more “agile”, if you will. For
example, there’s probably no hope of a Windows port of CMUCL, but there
is one for SBCL.

Good to know. I’d love to see a lot more software with its “open
source” licensing more along the lines of MIT/BSD/public domain become
more popular on all platforms, rather than seeing proprietary and GPL
software getting all the publicity and hype all the time.

As far as application speed is concerned, it’s sort of a horse race
between GCL and CMUCL. GCL wins some benchmarks, CMUCL wins some, and
some are too close to call. Clisp is probably the most portable of the
bunch – it runs on nearly every UNIX and is installed with CygWin. I
think there is a native Windows port too.

I seem to recall reading somewhere that GNU CLISP runs in something
absurd like 16MB of RAM – a simply astoundingly small amount of memory.
That’s a pretty neat trick for an ANSI standard implementation of pretty
much anything.

think there really isn’t another real programming language.
I don’t mind the attitude – I can just mentally route around it (my
bio-neural network is a bit like the Internet that way). The problem I
have with that is that it’s a newsgroup rather than a mailing list.

A) I have yet to meet a newsreader that doesn’t drive me up the wall.
B) I don’t need yet another “thing” to keep track of – I’m trying to
consolidate all my daily online communications (IMs notwithstanding)
in email as much as possible so I don’t have to make regular trips to
other applications to get caught up.

I believed that myself a long time ago, until I discovered nobody was
paying people to code in Lisp but Fortran and assembler would earn you a
decent living.

Hey, that doesn’t mean they’re “real” programming languages. Heh.

I also think a PDF of most of the book “Practical Common Lisp” is on
line somewhere. I went and bought a hard copy anyway. It tells you how
to do 21st century stuff like web servers in Lisp. :slight_smile:

Someone on this list privately and kindly emailed me with the URL for
that. I started reading the introduction this evening. I may well buy
the hardcopy myself, if I like it enough. I’m actually more likely to
purchase a technical book after I’ve already read it than before (take
note, Pragmatic Progammers: I’m your target market for stuff like the
Pickaxe Book’s free-digital-and-paid-print versions). The same was true
of music, until I just started boycotting all RIAA labels entirely.

. . . but that’s a story for another day (and mailing list).

On 9/5/06, M. Edward (Ed) Borasky [email protected] wrote:

At one time, SoftWarehouse, creators of Derive and now part of Texas
Instruments, sold a DOS Lisp that fit in 640K. :slight_smile: For all I know, the
latest versions of Windows Derive may still be built on top of it. :slight_smile:

Back in the days of, say, lisp 1.5, there weren’t many computers that
had as much as 650K.

My university mainframe was an IBM/360 Model 65 which was about the
largest general purpose machine IBM made back then (there were a few
other models of the 360 family which were the supercomputers of the
day).

That machine had 740K of main memory, and it was 3rd party hardware,
and they had to re-wire the machine to put in extra address lines when
they installed it.

And this was in the mid-70s


Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

Chad P. wrote:

On Tue, Sep 05, 2006 at 04:43:12PM +0900, Chad P. wrote:

I seem to recall reading somewhere that GNU CLISP runs in something
absurd like 16MB of RAM – a simply astoundingly small amount of memory.
That’s a pretty neat trick for an ANSI standard implementation of pretty
much anything.

I misremembered. It wasn’t that it ran on a computer with 16MB (or
whatever) of RAM, but that it required only 2MB of free RAM to run. Mea
culpa.

At one time, SoftWarehouse, creators of Derive and now part of Texas
Instruments, sold a DOS Lisp that fit in 640K. :slight_smile: For all I know, the
latest versions of Windows Derive may still be built on top of it. :slight_smile:

Chad P. wrote:

language as venerable as Lisp, if it’s not the current (relatively) huge
language Common Lisp.

Not that I recall … it was Lisp 1.5. I just dug out the manual – the
kernel was about 50k bytes. Larger than a Forth kernel of the same
vintage by a considerable amount. :slight_smile: This Lisp and the predecessor of
Derive, “muSimp”, were born on an 8-bit machine, the TRS-80. A 640K DOS
box was a huge space by those standards. :slight_smile:

On Wed, Sep 06, 2006 at 12:38:13AM +0900, M. Edward (Ed) Borasky wrote:

At one time, SoftWarehouse, creators of Derive and now part of Texas
Instruments, sold a DOS Lisp that fit in 640K. :slight_smile: For all I know, the
latest versions of Windows Derive may still be built on top of it. :slight_smile:

Was that a standards-complete ANSI Common Lisp implementation? If so,
that’s pretty impressive.

Actually, it’s impressive anyway, by today’s standards of language
design and implementation – though no more than I’d expect from a
language as venerable as Lisp, if it’s not the current (relatively) huge
language Common Lisp.