This article, written by Per Jacobsson, is aimed at Java developers curious about Lisp. It discusses the different dialects of Lisp that are available on the JVM today, and gives a crash course in how Lisp programming works and what makes it unique. Finally it looks at how Lisp code can be integrated with a Java system.
From the article:
One of the most exciting things in the Java world right now is the work being done to get other programming languages to run on the virtual machine. There is a lot of buzz around JRuby, Groovy, Scala, and the JavaScript engine Rhino. But why stop there? If you really want to take a step outside the mainstream and dive into something completely different from Java, Lisp is a great option. And there are several open-source implementations of the Lisp programming language for the JVM out there, ready to be explored.
So what makes Lisp worth looking at? For one thing, this fifty-year-old language has been the catalyst of many ideas we take for granted today. The if-then-else construct originally came out of Lisp, as did early attempts at object-orientation and automatic memory management with garbage collection. Lexical closures -- a hot topic for Java programmers right now -- were first explored in Lisp back in the seventies. And beyond that, Lisp still has many other unique features that other languages have yet to adopt, the kind of good ideas that are bound to make a comeback in the future.
Read the full article here.
Community comments
Eclipse Plugin
by Michael Bohn,
"Lisp is a great option"???
by Paulo Trecenti,
very interesting
by Deepal Jayasinghe,
Great Lisp Intro
by Julian Browne,
Re: Great Lisp Intro
by Michael Neale,
Re: Great Lisp Intro
by Michael Hunger,
Re: Great Lisp Intro
by Michael Hunger,
Try this new lisp language on the vm
by Ralf Puchert,
LISP Rocks
by peter lin,
Re: LISP Rocks
by Julien Martin,
Learning Common Lisp
by Charles Ditzel,
Get over it
by Mark Souza,
Eclipse Plugin
by Michael Bohn,
Your message is awaiting moderation. Thank you for participating in the discussion.
There is also the Dandelion plugin for Eclipse:
sourceforge.net/projects/dandelion-ecl
The advantage of this plugin is, that it is not bound to a specific Lisp Implementation. The two Lisps that are currently supported are CLISP and SBCL. They come directly with the plugin and are ready to use after the installation. This is ideal for Lisp beginners.
"Lisp is a great option"???
by Paulo Trecenti,
Your message is awaiting moderation. Thank you for participating in the discussion.
Ada is a great option.
very interesting
by Deepal Jayasinghe,
Your message is awaiting moderation. Thank you for participating in the discussion.
I still remember the first time I use LISP , it was for am AI assignment. I enjoyed a lot using that as well as I realize how powerful LIPS is. Having support from JVM for the powerful language like LIPS will make our life much more easier.
Article is very useful and very straightforward
Deepal
Great Lisp Intro
by Julian Browne,
Your message is awaiting moderation. Thank you for participating in the discussion.
I used to share a regular car journey with a real Lisp nut. He used to say that once you really get Lisp, all other languages look like a poor relations.
Shortly after I came across this article which filled in a lot of the gaps for me and to some extent explain why Lispalikes, like javascript and Ruby, are so powerful.
Try this new lisp language on the vm
by Ralf Puchert,
Your message is awaiting moderation. Thank you for participating in the discussion.
Here the Link: clojure.org/
And here an netbeans-plugin with completions,repl and so on: enclojure.org/
Have a look !
LISP Rocks
by peter lin,
Your message is awaiting moderation. Thank you for participating in the discussion.
I'm bias, but LISP rocks. Unfortunately, getting developers to try LISP or use it on a regular basis is hard. LISP is also very popular in the AI world in expert systems because it is so powerful.
peter
Learning Common Lisp
by Charles Ditzel,
Your message is awaiting moderation. Thank you for participating in the discussion.
I am not well versed at Scheme - but am familiar with Common Lisp and there are objects that I feel are excellent aspects of it - specifically CLOS (Common Lisp Object System) and add-ons like the rule-based CL libraries - LISA and Lisp Reasoner. One excellent place to start is LispBox. There is an excellent learning environment that features Franz's Allegro CL, Steele Bank CL, Clozure CL and CLISP tightly woven into Emacs development environment. Note also there are nice stand-alone development environments like Franz's development environment and LispWorks. I should point you to Foil which consists of a protocol and set of libraries to access the JVM (and for that matter CLI/CLR). Also environments like Franz's Common Lisp includes jLinker (a dynamic link between Lisp and Java). I've recently been spending a fair amount of time on Common Lisp - refreshing myself with what's happened in the past 20 years since I worked with it. Finally, I encourage anyone interested in Common Lisp and Scheme to view the following Google video, Practical Common Lisp.
cheers.
Charles
Re: Great Lisp Intro
by Michael Neale,
Your message is awaiting moderation. Thank you for participating in the discussion.
I was trying to think of a joke involving a cdr journey, but my coffee hasn't kicked in yet.
Just assume it was something witty ;)
Re: Great Lisp Intro
by Michael Hunger,
Your message is awaiting moderation. Thank you for participating in the discussion.
I heartily recommend the SE-Radio podcast with Dick Gabriel On Lisp. It is a real eye opener.
See www.se-radio.net/podcast/2008-01/episode-84-dic...
Especially the wonderful song from the roundworm album of Bob Kanefsky: www.songworm.com/lyrics/songworm-parody/Eternal... (God wrote in Lisp)
The OnLisp book from Paul Graham is available online at: www.paulgraham.com/onlisp.html
For German speaking people there was lately a quite funny introduction at CCC-Radio-Express:
chaosradio.ccc.de/cre084.html
Michael
Re: Great Lisp Intro
by Michael Hunger,
Your message is awaiting moderation. Thank you for participating in the discussion.
I forgot the mp3-link for the song: www.prometheus-music.com/audio/eternalflame.mp3
Michael
Get over it
by Mark Souza,
Your message is awaiting moderation. Thank you for participating in the discussion.
LISP developers, get over it. Use it for your hobbies and AI projects.. but are you serious about this???
(define frame (make JFrame))
(define button (make JButton "Click only once"))
(define action-listener
(object (ActionListener)
((action-performed e :: ActionEvent) ::
(*:set-enabled button #f))))
Re: LISP Rocks
by Julien Martin,
Your message is awaiting moderation. Thank you for participating in the discussion.
"Lisp rocks": I fully agree with you even though I would be hard put to code a simple "hello world" in lisp. I base my judgment of Lisp on a very powerful program called Maxima. This program is a symbolic math engine that allows you to perform any kind of formal calculus very easily. The only problem is that it is coded in common lisp and as stated in this article the jvm implementation of common lisp is not as good as the scheme version. My aim is to run Maxima on the jvm. Will this be possible one day???