LISP Family: Olympus of Programming or Underground
October 14, 2021
9 min read
Do you still think LISP has lost its fame? No way!
You are indeed partly right if you'd say that the LISP programming language is being rarely used directly today. But at the same time, developers actively use Lisp standalone implementations such as Clojure, Сommon Lisp, Scheme, and others.
You may not even suspect where you can find a Lisp code. It lurks inside big codebases and is still used by business giants.
<medium>Is Lisp worth learning in 2022 and beyond?<medium>
<medium>Why are Lisp concepts gaining popularity?<medium>
<medium>What Lisp dialect is the most widely used nowadays?<medium>
<medium>So, how it all began?<medium> What is a LISP?
Lisp (List Processing Language) was invented in 1958 by John McCarthy and was a pioneered functional programming with
No need for variables or assignment
Control via recursion and conditional expression
LISP origins are curious. <medium>John McCarthy's wanted something like "Mathematical Physics" — he called it a "Mathematical Theory of Computation"<medium>. He needed a very general kind of programming language to make a user interface AI that he had thought up in the late 50s. So he needed a language that:
Process data in lists (rather than arrays)
Symbolic computation (rather than numeric)
Syntax based on the lambda calculus
No need for variables or assignment
Control via recursion and conditional expressions
<medium>Ideas first introduced in Lisp<medium> included the if/then/else construct, first-class functions, recursive function calls, dynamic typing, lexical closures, interactive programming, dynamic memory allocation, garbage collection and incremental compilation.
Over time, it has spawned several dialects, including Common Lisp, Scheme, Clojure, Emacs Lisp, Racket, Hy, Arc, and others (more on this later).
Try LISP before you DIE, or why it's worth trying
LISP has been blessed as the most powerful programming language worldwide. Today it is <medium>the second-oldest programming language<medium> (after Fortran that is older by one year).
You won't find Lisp on the top of the charts kind of "the most popular language worldwide". But as you know 'ad populum' arguments are mostly irrelevant.
<medium>LISP pioneered a lot of key concepts that we find across a lot of languages today<medium>. It took its place and found a lot of apologists among developers. Even booming Python has many of the features of Lisp.
Learning LISP is a good way to master functional programming, so it's often used as an introductory language for undergraduate students.
But if everything is so great why LISP language clan isn't used universally? <medium>Why are so many still so skeptical about it?<medium> Why are many developers shying away from learning Lisp?
Let's see what Lisp programming pros and cons are commonly mentioned by its fans and opponents.
It's interesting that syntax is the point of both pros and cons lists. LISP syntax turns off many people — polish (prefix) notation and reams of parentheses take some time getting used to. But, be sure, once your eyes <medium>adjust to the parens, it feels like home!<medium>
LISP in real life: success stories
LISP-like languages continue to be used for software development and attract new users and businesses.
Let's remember some of the most <medium>famous Lisp-based business cases.<medium>
Daniel Higginbotham, the author of "Clojure for the Brave and True", called learning Clojure a journey through the Four Labyrinths: <medium>The Forest of Tooling, The Cave of Artifacts, The Mountain of Language, and The Cloud Castle of Mindset.<medium>
Lisp-family languages enable programmers to write programs fast and create powerful and flexible software that is required for complex and rapidly evolving domains.
<medium>"Lisp is dead" is one of the most commonly repeated myths.<medium> It continues to be used for development and that continues to attract new users and businesses. More telling is the growth of open-source projects and the number of communities related to Lisp-family languages.
We don't claim that LISP-like language is the silver bullet that everybody should be using. But it's worth trying! "This experience will make you a better programmer, even if you never actually use LISP itself a lot". (c) PG