Log in

No account? Create an account

CL-JavaScript 0.10.11, with docs

Marijn tweeted about the release of CL-JavaScript 0.10.11, which includes more documentation. Here's the description of the project:

JavaScript is the new BASIC—a universal scripting language. CL-JavaScript allows you to add user scripting to your Common Lisp application without requiring your poor users to learn Common Lisp. It is a JavaScript to Common Lisp translator, runtime, and standard library. We aim to be ECMAScript 3 compatible.

By using the Lisp compiler to compile JavaScript (and by using some clever tricks for the things that Lisp normally isn't good at), this implementation manages to be faster than most of the 2009 generation of JavaScript engines. The new generation (V8, Jägermonkey) beats it by, depending on the benchmark, a factor 4 or so.

Go check it out.



Re: Other way around? CL -> JS

Yes, I meant parenscript, sorry. And my understanding is that these days it is a lot more than JS with parens.

Re: Other way around? CL -> JS

From looking at the documentation, I'd agree that "a subset of Common Lisp" is the language understood by ParenScript.

One example in the documentation is:
(lambda (x)
  (case x
    (1 (loop repeat 3 do (alert "foo")))
    (:bar (alert "bar"))
    (otherwise 4)))

That doesn't, really, look like "JavaScript with parentheses" to me, but is something that the ParenScript compiler apparently understands.