💾 Archived View for gemini.ctrl-c.club › ~stack › gemlog › 2022-10-10.Common.Lisp.gmi captured on 2023-05-24 at 18:40:29. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

Re: Enjoying Common Lisp

gemini://box.matto.nl/commonlisp.gmi

I love Common Lisp. I wish I had taken the plunge when I was a younger. I've been a CL user for about 10 years, and here is what I think about my 'onboarding' experience.

Emacs is the biggest problem, if you don't already know it. I didn't, and the combined cognitive overload made the curve hard.

Someone semi-jokingly referred to Emacs as 'an operating system that could use a good editor...'

But you only need to know, like, three CONTROL- commands to get by. After ten years, I think that's all I use. Well, maybe five.

Lisp is an old language. When you think you found something conceptually wrong with it, you didn't, because they fixed it in 1974.

And then there are all those braces! At first, like many, I was horrified. But everyone said that I should just relax and it will make sense later. And boy, it really did!

Braces are the thing that makes Lisp, well, Lisp! Lisp is HOMOICONIC: it can operate on Lisp code as well as any other tree-like data, which is, extremely well. And that leads us to macros.

The way Lisp looks has to do with metaprogramming. Its structure is tuned for the ability to reason about and transform code as easily as any other data. The way it looks to beginners is not important.

Once you fully grok Lisp (10,000 hours or whatever works for you), you will see that almost all other languages (known as 'blub' in the Lisp community) are stupid, misguided subsets of Lisp. You will become a 'Smug Lisp Weenie' to others who don't get it.

Lisp is truly amazing. If you have a bit of free time on your hands, install SBCL (google for a beginner's guide to starting with CL) and give it a try, and don't give up for a bit - it will make sense, I promise!

Required reading:

"Common Lisp Recipes", Edie Weitz (for practical answers to questions)

"On Lisp", Paul Graham (to become a real Lisper who can write macros)

When you get comfortable with the basics, this will blow your mind:

"Let Over Lambda", Doug Hoyte

index

home