Live data from Hacker News

A Road to Common Lisp (2018)

stevelosh.com

1–10 of 50 posts

Re: A Road to Common Lisp (2018)

#2
I was exposed to Common Lisp in college in a "Programming Language Concepts" class, almost 20 years ago, and it didn't "click". I got no help or assistance or explanation, and this was pre-youtube and Google so it was hard to find an answer to "why is this happening?"

But I gave Clojure a try despite the bad taste in my mouth Common Lisp left, and it was def worth it.

To try it out real quick: https://tryclojure.org/

Re: A Road to Common Lisp (2018)

#5
It's a great article. Since then, we have more tools and resources so we can enhance it:

## Pick and Editor

The article is right that you can start with anything. Just `load` your .lisp file in the REPL. But even in Vim, Sublime Text, and Atom [and also VSCode] you can get pretty good to very good support. See https://lispcookbook.github.io/cl-cookbook/editor-support.ht... (also Lem, a CL editor that works for other languages, Jupyter notebooks, Eclipse (basic support) and LispWorks (proprietary, advanced graphical tools).

> if anyone is interested in making a Common Lisp LSP language server, I think it would be a hugely useful contribution to the community.

Here's a new project used for VSCode: https://github.com/nobody-famous/alive-lsp There's also https://github.com/cxxxr/cl-lsp

## Other resources

I already linked to it, but the Cookbook (to which I contribute) is a useful reference to see code and get things done, quickly. https://lispcookbook.github.io/cl-cookbook/

While I'm at it, my first shameless plug: after my tutorials written for the Cookbook and my blog, I wanted to do more. Explain, structure, demo real-world Common Lisp. I'm creating this course (there are some free videos): https://www.udemy.com/course/common-lisp-programming/?coupon... (ongoing -50% coupon for June).

## Web Development

See the Cookbook, and the awesome list (see below). We have many libraries, you still have to code for things taken for granted in other big frameworks. I have some articles on my blog.

We have new very cool kids in town, especially CLOG, that is like a GUI for the browser. Check it out: https://github.com/rabbibotton/clog

## Game Development

See again the awesome-cl list. And the Kandria game, in the making, all done in CL: https://kandria.com/ (it just got accepted for a Swiss grant, congratulations).

## Unit Testing

We have even more test frameworks since 2018! And some are actually good O_o

## Projects

To create a full-featured CL project in one command, look no further, here's my (shameless plug again) project skeleton: https://github.com/vindarel/cl-cookieproject you'll find the equivalent for a web project, lighter alternatives in the README, and a demo video: https://www.youtube.com/watch?v=XFc513MJjos&feature=youtu.be

## Libraries

He doesn't mention this list, what a shame: https://github.com/CodyReichert/awesome-cl => the CL ecosystem is probably bigger than you thought. Sincerely, only recently, great packages appeared: CLOG, cl-gserver (actors concurrency), 40ants-doc, official CL support on OVH through Platform.sh, great editor add-ons (Slite test runner, Slime-star modules…), Coalton 1.0 (Haskell-like ML on top of CL), April v1.0 (APL in CL), a Qt 5 "library" (still hard to install), many more… (Clingon CLI args parser, Lish, a Lisp Shell in the making, the Consfigurator deployment service, generic-cl)…

His list is OK, I'd pick another HTTP client and another JSON library (new ones since 2018 too), but that's a detail.

BTW, see also a list of companies: https://github.com/azzamsa/awesome-lisp-companies/

## Community

We are also on Discord: https://discord.gg/hhk46CE and on Libera Chat.

## Implementations

CLASP (CL for C++ on LLVM) reached its v1.0, congrats. https://github.com/clasp-developers/clasp/releases/tag/1.0.0 More are in the making…

We got dynamic library delivery tool for SBCL (sbcl-librarian), more good stuff is coming…

Allegro CL (proprietary) got a new version running in the browser…

Crazy Lisp world <3

Re: A Road to Common Lisp (2018)

#6

I was exposed to Common Lisp in college in a "Programming Language Concepts" class, almost 20 years ago, and it didn't "click". I got no help or assistance or explanation, and this was pre-youtube and Google so it was hard to find an answer to "why is this happening?" But I gave Clojure a try despite the bad taste in my mouth Common Lisp left, and it was def worth it. To try it out real quick: https://tryclojure.org/

I also remember learning Scheme and having it be a real mind bender. Scheme/Racket is great, but I think Clojure being more opinionated and being immutable by default is a huge improvement in terms of understanding larger projects. Also, their parallel computation and mutex constructs are some of the easiest to understand AND easiest to guarantee you did it right. This is going to continue becoming more and more important given the huge rise in CPU core counts both on desktops and in servers.

Re: A Road to Common Lisp (2018)

#8
post #4

Has anyone used the “Land of Lisp” book, or Exercism.org to learn Common Lisp? Any other fun alternatives for learning lisp?

I've tried a few different books, including Land of Lisp, PCL, SICP, Chassel's Introduction to Emacs Lisp, but what I'd recommend head over shoulders above them all is buying a copy of Touretzky's Common Lisp: A Gentle introduction to Symbolic Computation. It's wonderfully thought through, really helped me finally grok elementary stuff like what a cons cell is, exactly how apostrophes function, what asymbol is, and a lot more. It's not meant to be comprehensive, it completely leaves aside CLOS, but it's left me with a damn solid foundation for working with Lisp.

Re: A Road to Common Lisp (2018)

#9
post #8
post #4

Has anyone used the “Land of Lisp” book, or Exercism.org to learn Common Lisp? Any other fun alternatives for learning lisp?

I've tried a few different books, including Land of Lisp, PCL, SICP, Chassel's Introduction to Emacs Lisp, but what I'd recommend head over shoulders above them all is buying a copy of Touretzky's Common Lisp: A Gentle introduction to Symbolic Computation. It's wonderfully thought through, really helped me finally grok elementary stuff like what a cons cell is, exactly how apostrophes function, what asymbol is, and a…

Seems the author agrees with you. From the article,

"The best book I've found for getting started in Common Lisp is Common Lisp: A Gentle Introduction to Symbolic Computation. "

Re: A Road to Common Lisp (2018)

#10
post #5

It's a great article. Since then, we have more tools and resources so we can enhance it: ## Pick and Editor The article is right that you can start with anything. Just `load` your .lisp file in the REPL. But even in Vim, Sublime Text, and Atom [and also VSCode] you can get pretty good to very good support. See https://lispcookbook.github.io/cl-cookbook/editor-support.ht... (also Lem, a CL editor that works for other…

+1 great comments

You mentioned VSCode: I was surprised at how well the GitHub Codepilot plugin works with Common Lisp code - not as well as with Python or JavaScript, but pretty good. Check it out.

Post reply on HN