DEV Community

vindarel
vindarel

Posted on

Debugging Common Lisp: "I feel so much faster and free"

          _____    __   __  __        
         / ___/   / /   \ \/ /               |\      _,,,---,,_
         \__ \   / /     \  /                /,`.-'`'    -.  ;-;;,_
        ___/ /  / /___   / /                |,4-  ) )-,_..;\ (  `'-'
       /____/  /_____/  /_/                '---''(_/--'  `-'\_)
Enter fullscreen mode Exit fullscreen mode

Read on:

Man CL is awesome. I absolutely love being able to debug libraries, live, when there's a problem. Registering stickers, changing the library code, hot reloading... god,

I feel so much faster and free.

[Question] Sly stickers are basically like elisp's edebug stepping through code yea?

Yes, but more pin-point. You can consume the results in two ways:

  1. Run the code to completion and inspect all results of all stickers after-the-fact
  2. Turn on "breaking stickers" and have the debugger come up before and after each sticker, displaying the results.

It's great for visibility. I noticed some weird behaviour in a library this morning, so I jumped-to-def, which took me into my local Qlot copy of the lib, then I set a bunch of stickers, recompiled the function, then ran my own code to inspect the issue.

"When I run my code X, what is happening at library location Y?" <- I can answer this question instantly in CL but not other langs.

This is not me saying this for once, but someone proficient in Rust, Haskell, Clojure and CL (and probably more), also the author of the AURA package manager for Arch Linux.

and… that's it!

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

Billboard image

Create up to 10 Postgres Databases on Neon's free plan.

If you're starting a new project, Neon has got your databases covered. No credit cards. No trials. No getting in your way.

Try Neon for Free →