# Which version of lisp is best

This topic is 4726 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

I know a little bit of clisp and have been playing around with scheme. Can anyone give me any pointers on the advantages and disadvantages of various lisp implmentations? Which do you think is best and why?

##### Share on other sites
Well now, that really depends on what in the world you want to do with it.

CLisp is an implementation of Common Lisp, which is designed to pretty much do anything and everything under the sun. If you're brave enough to walk the road less travelled, Common Lisp is a really good platform to develop just about any kind of application on. Just be prepared for the reality that Lisp Is Different.
Scheme, on the other hand, is pretty much the answer to the question "how small can we make Lisp and still have it usable?". It's much easier to learn than Common Lisp, much much MUCH simpler, and you will likely have to write quite a bit of basic library-ish code before you start making your actual application. Most implementations, however, will have (implementation-specific) libraries that help this, and there are also a number of collections of miscellanious handy code to help you along.

Common Lisp is good application development language, and great for all sorts of high-level logic and fun stuff like that. Scheme is a good embedded and scripting language. You can write big applications in it, but you'll have to do things like find/write your own hashtable library and advanced string handling routines.

Decide which you want to use, and for what, before you start worrying about implementations. It really depends on what you need.

Still, here's what I know. For Common Lisp, amoung the open source projects, there are basically three big ones:
CLisp, which is relatively small, fairly straightforward, written in C, widely cross-platform, and kinda slow.
CMUCL, which is REALLY big, REALLY complete, has all sorts of interesting/twisted things in it, and pretty damn fast. It's only on UNIX-y platforms though.
SBCL, which is a fork of CMUCL that makes things a lot smaller, a lot simpler, and almost as fast.

Of these three, only CLisp works on Windows, though I think all of them compile under Cygwin, and MAYBE MinGW. Then there's the non-free Lisps, of which the big ones are Allegro Common Lisp and Corman Lisp. Corman Lisp is Windows-only, and ACL has versions for Windows, Unix and Mac. With Corman Lisp at least, you get what you pay for, both in terms of speed and handy tools like GUI builders. If you're doing Windows dev, it's definately a good choice. I've never used ACL, but I assume it's rather similar.

For Scheme, there are BUCKETS of implementations, most of them free, some of them good. Check www.schemers.org for a pretty full list. I can recommend Scheme48, MIT Scheme, and (especially) PLT Scheme. Guile is a Scheme interpreter that's customized for embedded and scripting use. Whichever you choose, I suggest you make sure it's compliant with the Scheme standard (it should say R5RS compliant somewhere in the docs), especially if you plan on using other people's code.

##### Share on other sites
Also, don't forget LispWorks.

comp.lang.lisp search

##### Share on other sites
Table comparison
http://www.cliki.net/Common%20Lisp%20implementation

##### Share on other sites
ok thanks for the information.

I will probably go with clisp now as I want to really just pick up the semantics of the language so that I may later on as you say go with guile for embedding.

thanks again for the help all.

##### Share on other sites
#!/usr/bin/clisp(format t "Hello, World!!!")

genjix@linux:~> ./cWARNING: *FOREIGN-ENCODING*: reset to ASCIIHello, World!!!genjix@linux:~>

how can I get rid of that annoying error message?

thanks again.

##### Share on other sites
A little beside the point, but there's a little bit of info on GOAL (Game Object Assembly Lisp) which was used in the first Jak and Daxter game postmortem (gamasutra registration may or may not be required) - but to the best of my knowledge GOAL is not publicly available.

But it might give you some ideas.

##### Share on other sites
Quote:
 Original post by Will FA little beside the point, but there's a little bit of info on GOAL (Game Object Assembly Lisp) which was used in the first Jak and Daxter game postmortem (gamasutra registration may or may not be required) - but to the best of my knowledge GOAL is not publicly available.But it might give you some ideas.

##### Share on other sites
lol LISP looks like its some kind of dog language, it basically has a very bad structure, sry for my ignorance, this is what happens when you spend all your time with c++, especially for someone who can write pong faster than you can write a hello world application using the .net platform :P

• 10
• 16
• 14
• 18
• 15