Lisp
Lisp has a strange hypnotic fascination. Probably it’s for all those parenthesis, the idea that commands, expressions and therefore logical concepts have a beginning and an end. They’re not clear, but self-enclosed. Selfish, but in a good way.

Unfortunately, Lisp is not a fashionable programming language anymore. List processing (yeah: lis-p) today seems kinda meh as a selling point. Until you realize that since in Lisp everything is a list, list processing means the ability to process anything, code included. That said, let’s be honest: being at ease in Lisp requires to think in a Lisp-y way and this is not “immediate”.

Also, most of the official/popular books on Lisp aren’t that welcoming. The most effective textbook is probably “Common Lisp: A Gentle Introduction to Symbolic Computation”. And if they need to specify that it’s a “gentle introduction”... well, it should mean something. By the way, it’s actually gentle, I’m able to confirm that.

Many Lisp books and tutorials make approaching the language harder than it should be, essentially because of the author’s personal tastes in language platforms and IDEs. My very personal advice is to keep everything simple.

- First, install SBCL via CLI.

- Second, ignore all the stuff about “using Lisp in Emacs” if you’re not an Emacs lover already, otherwise you’ll spend precious time trying to understand Emacs. Use your favorite editor, you’ll always be able to get into Emacs later. - Third, go on and play coding.

Using Lisp is fun and quite rewarding, for desktop applications as much as embedded systems. It won’t make you rich and neither the star of your next developers meetup. But it’s really worth a try. And, probably, a good first step into the strange world of functional programming.