There are many Lisp languages like Common Lisp, Scheme, Clojure, etc., and they’re quite different to each other. For examples, one needs main
as the entry point, another has while
loops, some use t
and nil
while others use #t
and #f
, one has its codes starting with #lang
, and so on. My question is, which language in the Lisp family is the most similar to the original LISP, be it in syntax, features, or appearances?
One simple approach is to use a similarity measure, such as Jaccard index. We can specify attributes that might be relevant to a language being a Lisp, e.g. does it have conses, does it use parenthesized syntax, what kind of macro facility it might have (if any), etc. Then we can come up with a list of languages, each represented by a set of attribute values, and compute the Jaccard indices between them. Example from input.