programming language

Other programming languages implemented in Common Lisp.

If Python runs on Common Lisp, does it mean you can have snakes on a cl-trane?

S-exp syntax for other programming languages.

See also s-exp syntax, for a list of systems providing a lisp-like syntax for different programming languages.

Implementations of Common Lisp written in other programming languages

While Common Lisp implementations are usually written in Common Lisp, some implementations are written at least partially, if not mostly, in a different programming language. Those implementations can be (or could be if they were conforming enough) used to bootstrap other Common Lisp implementations.

  • emacs lisp: emacs-cl is an implementation of Common Lisp written in emacs lisp (23). It would require some love to be updated to emacs 24 and lexical bindings, and complete the CL subset.

  • Scheme: there's an old bit-rotten implementation of Common Lisp, Butterfly Common Lisp, written in Butterfly Scheme. But no known contemporaneous CL implementation is written in scheme.

  • C:
    • CLISP is written mostly in C (with heavy usage of the C preprocessor and of a custom preprocessor), even if some parts are written in Common Lisp, notably the compiler.
    • Robert Strandh's Bootstrap-Common-Lisp is implemented in pure C.

  • Java: More than 50% of the sources of ABCL are written in Java (the rest in Common Lisp) (298 java files, 256 lisp files; 13070 java lines, 10195 lisp lines).

  • Smalltalk: no known CL implementation written in smalltalk (there are toy lisps implemented in smalltalk).
  • Python: no known CL implementation written in python (there are toy lisps implemented in python).
  • Ruby: no known CL implementation written in python (there are toy lisps implemented in Ruby).
  • Javascript: no known CL implementation written in Javascript (there are toy lisps and scheme implemented in Javascript).
  • Perl: no known CL implementation written in perl (there are toy lisps implemented in Perl).
  • Bash: no known CL implementation written in bash.
  • PopLog: contains a CL implementation written in POP-1 (along with Prolog, Standard ML, and POP-11).