In the past LISP was the only powerful functional programming language, as far as I understand. Now there are lots, why do people still use LISP with its weird syntax? Is there a unique killer-feature of a kind?
In the past LISP was the only powerful functional programming language, as far as
Share
First, Lisp in general and Common Lisp in particular is more “multi-paradigm” than “functional”. From here on, I will mostly discuss Common Lisp (CL).
There isn’t “one killer feature”, though. CL is a programmable programming language, making it easy to do meta-programming. That is, you can usually do “meta-level” things directly in the language instead of having to reach for a pre-processor that does textual transformation into your base language.
CL also has a very powerful object subsystem (CLOS), that has, so far, supported anything I’ve wanted to do with class hierarchies and/or methods.
As far as the syntax goes, I guess it’s a bit different from the more classic syntax of the “Algol family” languages, but it’s no more and possibly less weird than APL.