Follow

What lisps are there for "systems programming" where the system being programmed doesn't have a tagged architecture?

I guess one could say "a whole bunch of compiler intermediate languages" but I'm not sure that counts

@cwebber Only thing that comes to mind is Clojure, but that falls into the "we are a JavaScript shop so everything is running on Node" fallacy.

@cwebber would you count Chicken Scheme as a lisp? iirc it uses ansi C as it's intermediate representation

(sorry if I'm misunderstanding what you mean by "tagged architecture")

@balrogboogie @cwebber Chicken Scheme would definitely be the first lisp-ish thing I would go to if I wanted to interface with C code or do low-level programming, because it's simple and I'm already familiar with it. Much nicer to interface with C libraries than Racket since you get to use the headers and the C compiler to make sure your types are correct.

SBCL is the first Common Lisp compiler that comes to mind. AIUI it is competitive with C for performance.

@apg pre-scheme definitely, and SBCL in the same way that Guile 3.0 will be. Unfortunately, since we aren't generally using tagged architectures, dynamic typing has a runtime cost that it wouldn't on a tagged architecture. JITs and type annotation (which SBCL does support iirc) may help though.

Sign in to participate in the conversation
Octodon

Octodon is a nice general purpose instance. more