5 ms·
Lisp gets a great deal of undue credit as being some kind of timeless enlightened wisdom, which I see as ignorant of the history of the language's development.
by RodgerTheGreat 12y ago
Lisp gets a great deal of undue credit as being some kind of timeless enlightened wisdom, which I see as ignorant of the history of the language's development.
It took years to develop approaches to garbage collection (the earliest prototypes used bump allocators and crashed when they exhausted a heap), years to finalize the syntax of the language (you'll notice that the "maxwell's equations" are written using M-Expressions, a syntax for the language which was discarded for ease of implementation and later rationalized because homoiconicity can be handy), decades to realize how important lexical scope (versus dynamic) is to maintaining encapsulation. Modern Lisps are substantially different in syntax and semantics from these earliest ideas; we're just still calling them Lisp.
It's very easy to make Lisp look elegant when you brush all the implementation details under the rug.
- coldtea 12y ago>Modern Lisps are substantially different in syntax and semantics from these earliest ideas; we're just still calling them Lisp. An interesting take on "modern", meaning "the last 3 decades or so", which is like millenia in the IT industry...
- TeMPOraL 12y agoI understand that by "IT industry" you mean the Web, which is the industry's equivalent of a fashion show. Work clothes, suits and hazmat wear also don't change their design every three months.
- coldtea 12y agoNo, I mean the IT industry. I have been following it since the mid-eighties...
- laichzeit0 12y agoNot redesign, but recycle old ideas. It might change in details, but as far as I've thus far observed, IT operates in cycles. The terminal + mainframe -> the personal computer -> the cloud (personal mainframe) -> ? Like cycles in economics, climate, fashion, etc.
- yogthos 12y agoI'm not sure what you're talking about here. The latest language in Lisp family is Clojure and it came out in 2007. The syntax that it uses is quite a bit different from Lisps from 30 years go.
- taeric 12y agoI wouldn't call it quite a bit different. Really just seems to have a few small changes where they prefer [] over (). Otherwise just a different set of standard macros. Or are you referring to some other difference?
- coldtea 12y agoClojure is not that different, but besides that, parent implied changes from Lisp circa '60s that were already in CommonLisp and Scheme 30 years ago...
- Delmania 12y agoNo language that is developed is perfect on release. The timeless wisdom of Lisp, as you call it, rest largely on macros and lambdas. Those ideas are powerful in their ability to allow you to build abstractions and customize the language to your needs. Basically, Lisp allowed for DSLs before the concept of a DSL was even recognized.
- deleted 12y ago[deleted]
- vinceguidry 12y agoYou can't call it timeless if it took time to develop.
- nights192 12y agoYeah- you're right. Pythagoras' theorem obviously isn't timeless; the fool took time devising the formula!
- vinceguidry 12y agoPythagoras did not discover the theorem, it's just named after him. He may have been the first to record a proof of it. It's conceivable that the very first peoples to become seriously interested in geometrical calculation would have discovered it as a matter of course. It does meet the definition of timelessness whereas Lisp does not. As Wikipedia notes: "Mesopotamian, Indian and Chinese mathematicians are all known to have discovered the theorem independently and, in some cases, provide proofs for special cases."
- nights192 12y ago... which is irrelevant. The point posed was that the ephemeral form heralds the so-called 'revolutionary' concepts, and stating that a prolonged delivery of the concepts invalidates their usefulness is the result of an overly literal interpretation of a common phrase.
- michaelsbradley 12y agoSome of the "old Lisp things" are becoming new again. For example, John Shutt has developed a non-trivial theory of F-Expressions (vau-calculus)[1] and a language named Kernel that employs them[2]. Neither has received wide attention yet, but the Lisp renaissance of the past few years is still young... [1] https://www.wpi.edu/Pubs/ETD/Available/etd-090110-124904/unrestricted/jshutt.pdf https://www.wpi.edu/Pubs/ETD/Available/etd-090110-124904/unr... [2] ftp://ftp.cs.wpi.edu/pub/techreports/pdf/05-07.pdf
- db48x 12y agoExactly the same is true of Maxwell's equations. The four we use today are different than the 20 he originally came up with; most of that reduction comes from vectorizing them, and they gain a lot of clarity by using vector-calculus operations such as gradient and curl. Together these changes brush the computational complexities under the rug, and leave only the descriptive power of the laws: * "the gradient of the electric field is proportional to the amount of electric charge" * "the curl of an electric field is always zero" * "the gradient of a magnetic field is always zero" * "the curl of a magnetic field is proportional to the size of the electric current plus the amount of change in the electric field with respect to time".