BT

Article: Exploring LISP on the JVM

by Ryan Slobojan on Jul 17, 2008 |

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.

Hello stranger!

You need to Register an InfoQ account or to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Eclipse Plugin by Michael Bohn

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

Ada is a great option.

very interesting by Deepal Jayasinghe

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

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

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

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

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

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

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

I forgot the mp3-link for the song: www.prometheus-music.com/audio/eternalflame.mp3

Michael

Get over it by Mark Souza

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

"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???

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

12 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2013 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT