HACKER Q&A
📣 soulbadguy

Looking for statically typed, No-GC and compiled Lisp/scheme


Looking for a personal project so open-source would be great, but maturity/production readiness is not really a factor.

The only significant thing i can find so far is https://github.com/carp-lang/Carp.

Anything notable that i might have missed ?


  👤 trealira Accepted Answer ✓
There's PreScheme, which is a restricted dialect of Scheme that compiles to C. I haven't used it, but it seems like C with Lisp syntax. It has no support for closures, garbage collection, or first-class continuations. Vectors aren't bounds-checked. Types are inferred using Hindley-Milner type inference.

https://groups.scheme.org/prescheme/

It's old, and it seems like no one had written anything related to it in 20 years until in 2022. Now, there seems to be a port of PreScheme from Scheme48 to Guile Scheme at the moment.

https://gitlab.com/flatwhatson/guile-prescheme/


👤 lr0
You can have some sorta of static types with cl with syntactic sugar[1]. Although I always prefer static types, forcing them in Lisp strips a lot of its power.

[1]: https://youtu.be/OzGVgPY9W-w


👤 cheaprentalyeti
I just did a quick search and found this: [0] which seems to have lots of references to no or minimal garbage collection lisplike languages.

[0]: https://news.ycombinator.com/item?id=11853355


👤 kazinator
ThinLisp: (old, seemingly not maintained): https://www.thinlisp.org

👤 gus_massa
From the Carp readme:

> Automatic and deterministic memory management (no garbage collector or VM)

Does this mean "reference counting"?