CLforJava? What Does That Mean?CLforJava is an ongoing project in the Computer Science department of the College of Charleston to educate students in modern software engineering practices by having serial groups of students build a complex product over several semesters. Students work in a simulated professional development environment using a representative set of industrial tools and are graded as they would be in the industry. The product itself is a totally new version of the Common Lisp language that runs on the Java Virtual Machine and is intertwined with the Java language in such a way that users of Lisp can directly access Java libraries and vice versa. No other implementation of Common Lisp has this bidirectional ability.
What is Common Lisp?Lisp has been around for 50 years. It was developed to support research into symbolic computing (it got called AI later). In the mid-80's there was a successful project to gather the (many) versions of Lisp that had evolved over the 2 decades. This new version was the first ANSI standardized Lisp called Common Lisp. CL is still prominent in AI research, and it has also become a preferred language for other very large, complex, and changing problems.
The CLforJava AdvantageCLforJava gives developers the freedom to move between Common Lisp and Java without having to deal with complex, and often unintelligible, Foreign Function Interfaces. With CLforJava, a developer can use the complex, powerful Lisp functionality side-by-side with the modern, structured power of Java.