Ask HN: What Is the Lisp “Enlightment”?
21–30 of 45 posts
Re: Ask HN: What Is the Lisp “Enlightment”?
#22Re: Ask HN: What Is the Lisp “Enlightment”?
#23With something like SBCL, you can literally write assembly in lisp notation (called VOP in SBCL), then layer the Common Lisp language on top seamlessly, then layer your domain-specific code on top with your code looking and acting just like it is part of the native language.
When you're done, you've built language primitives up to deal with your specific problem domain then you can solve the problem with a language custom-made for your needs.
Re: Ask HN: What Is the Lisp “Enlightment”?
#24Re: Ask HN: What Is the Lisp “Enlightment”?
#25Re: Ask HN: What Is the Lisp “Enlightment”?
#261) one can generate code and evaluate it
2) one can write simple interpreters, see McCarthy's first Lisp interpreter in Lisp -> your own eval
3) one can write procedural source code transformations, where the code is Lisp data -> transforming Lisp programs by Lisp programs -> apply the same development tools to the meta-level -> integrate it directly into the evaluator
The englightment is understanding how a minimal Lisp machinery for this works and that things fit together quite well.
4) how to apply source code to various software problems, for example in declarative programming or how to provide simpler interfaces to more complex, say, object-oriented mechanisms (-> example CLOS)
then there are a large number of consequences / further directions
* addressing the deficiencies of that model
* compilation
* language building (embedded DSLs)
* editor interfaces
* interactive programming
* UI representations as data
* machine models
Re: Ask HN: What Is the Lisp “Enlightment”?
#27Re: Ask HN: What Is the Lisp “Enlightment”?
#28And yet, it is dramatically simpler.
Re: Ask HN: What Is the Lisp “Enlightment”?
#29If you are just starting, maybe you would be better off using Racket Scheme - it has a modern and rich ecosystem around it.
If you do go with Common Lisp, you can grab a free copy of my book by setting the price to $0.00 https://leanpub.com/lovinglisp There are better introductory Common Lisp books, but mine has many fun example programs that you might enjoy if your technical interests overlap mine.
Re: Ask HN: What Is the Lisp “Enlightment”?
#30Lisp is 64 years old. In some ways its reputation is oversold. A lot of features (GC, varargs, lexical scope, closures, higher-order functions, dynamic method dispatch, reflection) first gained prominence in Lisp, despite being extravagantly expensive. Some optimizations were found, computers became vastly more powerful, and now those innovations are merely table stakes for any modern language. IMHO the biggest excep…
For me the most “woa” thing about LISP and its macros is that code is data, and data is code. The representation of a (nested) list is exactly the same as actual code, and using macros, I can manipulate it as such. That is pretty profound, and I still have yet to find a language that just makes it so simple and elegant as with LISP.
P.S. If you're looking for Lisp enlightenment experiences, actually read through the code snippets in the book -- spending a few minutes staring at 5 lines of macro code and then having understanding dawn on you will give you some of those experiences (at least in the small) :-)