Why you should read "RECURSIVE FUNCTIONS OF SYMBOLIC EXPRESSIONS AND THEIR COMPUTATION BY MACHINE (Part I)" aka "The original LISP paper"

Read it here: http://www-formal.stanford.edu/jmc/recursive.html
"This paper appeared in Communications of the ACM in April 1960. It is the original paper on Lisp."

If you read it you'll:

Table of Contents:

LISP - What is LISP?

The name stands for "LISt Processor", which is a lot like calling a computer "a thing that does calculations" - while true it is massively understating its capabilities. LISP is nothing less than the second most mutable language in terms of syntax that I am aware of and despite it having been invented in 1960 the Lisp family of languages is very much alive - in good part due to the bastard child Javascript which, unbeknownst to most, is actually a distant cousin of LISP (in that it got started as a Scheme clone, and Scheme is a modern variant of LISP)
Unlike Javascript, however, LISP is extremely abstract and has the rather unique feature that data and code are rather interchangeable - to the point where the language defines an "apply" and an "eval" function, which we'll later see, are defined entirely in the language but at the same time are full LISP interpreters and therefore allow arbitrary runtime compilation trivially.



Why you should care

It's the original paper on LISP, it introduces LISP from the very start at a time where programming was very new, x86 did not exist yet and your average person had never seen a computer much less used one. As such the introduction begins with Math, not particularly difficult Math either. It then step by step introduces every concept you need to understand this glorious language. You won't see any use of weird nebulous buzzwords either because it's a research paper in a time where there wasn't a huge private industry interested in looking like they have the shiniest new thing, nor was there enough time yet to cloud things, as such you have a certain amount of clarity.

If you were to instead try to read a modern report on a language and its features you'd get a way more convoluted and lengthy read, where all those additional features are added already and those intricacies and historic idiosyncrasies that only make sense because removing them would cost more and therefore are difficult to understand, instead of the clear and relatively concise read the paper provides. For example the C++14 draft is 1352 pages, while the LISP paper is only 34 pages - and most of them concern themselves with the introducing the concept and not just describing it.



Realizations from reading the paper - Or: further reasons why you should read it



Conclusion

Do you want to see where everything came from? A view on the world that was when computer science was young? A view on a paper that profoundly changed the world and a glimpse of the man who made it all possible? Or do you simply want to learn about a new (well, technically old) way of programming? Or just expand your horizon a bit?
If you said yes to any of those, you should definitely read the paper, give it a shot and don't just give up if you get stuck - try a different section, Section 3 can get a bit difficult to digest on the first reading but still worth the read.

Read it here: http://www-formal.stanford.edu/jmc/recursive.html
"This paper appeared in Communications of the ACM in April 1960. It is the original paper on Lisp."