First, you probably want to read A Road to Common Lisp.
Second, I joke a lot and swear even more. If you take offense to anything I say, I promise I didn’t intend for it to be offensive. I wrote about getting started with SBCL using CLPM with VSCode. The article you are about to read explains why I wrote it. I have many opinions of Common Lisp projects. My opinions of projects have nothing to do with the folks that wrote them.
Prerequisites VsCode with command line installed Alive Common Lisp plugin for VsCode SBCL CLPM If you are on Linux, Mac, or Windows WSL, and you install sbcl via this plugin for asdf-vm, you will get the latest sbcl with clpm automatically installed for you. All you need at that point is vscode with the alive plugin.
The TL;DR; version Create a folder for your new project Start a repl rlwrap sbcl Create a directory for the project called experiment (ensure-directories-exist "experiment/") ;; That last slash matters Exit the repl (sb-ext:exit) ;; You can also just do a ctrl-d Open vscode in your newly created directory cd experiment code .
I end up explaining a pair of tools that I use all the time, so I am writing this down now so I can link to it later. I have worked in many environments where different services or projects were implemented in or relied on incompatible versions of different languages, dbs, etc. Some tools that help me deal with that are asdf and direnv. Asdf is a cli tool for managing runtime versions of software per project.
So I decided on Rust over Common Lisp for Advent of Code. I read up on inline testing and decided it would be fun to see what I could do. Testing instead of repl has the amazing side-effect of leaving tests behind as artifacts. What’s not to like?
First off, the tooling is fantastic. VsCode with rust-analyzer is great. It took me basically no time to get up and running. I had to read up on workspaces, but it’s been pretty straightforward once I got that sorted.
I am doing Advent of Code this year. I have meant to do it for several years now; however, something always seems to come up. I was originally planning on doing it in Rust, but the facts that common lisp got a version-pinning-non-global-install package manager and vscode support tempt me to do it in common lisp.
Lisp isn’t cool right now. It doesn’t have the safety/speed/memory management of Rust. 31337 H4X0RZ don’t opine on its beauty on hacker news every few days.
The dangers of writing and the perils of recording public speaking engagements are real and amplify over time. The moment one publishes anything, they have publicly put themselves out there as an expert. Even if they claim not to be, someone is going to copy-paste something. There are consequences.
That Medium article you wrote with the example of how to record automation from a foot pedal into Logic while you record the audio on a separate track was wrong.
My writing will live here. jlegler.com has been… wait for it… smashed to atoms. The name and my Github name come from a Virginia Woolf quote that an ex-girlfriend of mine turned me onto. I still really like the phrase, and it still feels good to use. I didn’t read Mrs. Dalloway until much later, and after having read it, I enjoy the expression even more.
The old site, with its terrible writing, memes, and videos that haven’t aged well, will likely take up residence in the way-back machine or the hollow to which forgotten websites disappear.
Jason Legler is a software developer living in Denver, CO with his wife, daughter, and lots of creatures. He enjoys building things on AWS. He likes learning programming languages, even though he rarely gets to use them. He misses Joe Armstrong. He builds amazing things for Stedi.