Mini Lisp in under 1k lines of C: Cheney or mark-sweep GC, which is best?

This page summarizes the projects mentioned and recommended in the original post on /r/lisp

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • lisp-cheney

    A mini Lisp in 1k lines of C with Cheney's copying garbage collector, explained. Includes over 40 built-in Lisp primitives, floating point, strings, closures with lexical scope, macros, proper tail recursion, exceptions, execution tracing, file loading, a copying garbage collector and REPL.

  • A mini Lisp with Cheney GC

  • lisp

    A mini Lisp in 1k lines of C with garbage collector, explained. Includes over 40 built-in Lisp primitives, floating point, strings, closures with lexical scope, macros, proper tail recursion, exceptions, execution tracing, file loading, a mark-sweep/compacting garbage collector and REPL. (by Robert-van-Engelen)

  • A mini Lisp with mark-sweep GC

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • swcl

    Steel Wool Common Lisp

  • I'm currently implementing Immix in SBCL (got generations working yesterday), but I wouldn't recommend one does that for a miniature implementation, as my implementation (though with hacks, performance tricks of dubious quality, and having to put the hysterical raisins somewhere) is about 1kLOC, and I haven't even gotten to writing compaction yet. A simple hybrid of mark-sweep and copying is the Lang-Dupont collector which copies one portion of the heap at a time, marking and reclaiming the rest in place.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts