swcl
Steel Wool Common Lisp (by no-defun-allowed)
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)
swcl | lisp | |
---|---|---|
8 | 2 | |
8 | 66 | |
- | - | |
0.0 | 4.9 | |
3 days ago | 5 months ago | |
Common Lisp | C | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
swcl
Posts with mentions or reviews of swcl.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-08-21.
-
Garbage Collection in a Large Lisp System (1984) [pdf]
related: the Immix inspired parallel-mark-region GC developed by Hayley Patton (https://github.com/no-defun-allowed/swcl) got merged recently into SBCL.
https://github.com/sbcl/sbcl/blob/master/doc/internals-notes...
https://applied-langua.ge/~hayley/swcl-gc.pdf
build with
./make.sh --without-gencgc --with-mark-region-gc (on x86-64/Linux and x86-64/macOS only at the moment).
-
SBCL: merge of mark-region GC
The Immix inspired mark-region GC developed by Hayley Patton (https://github.com/no-defun-allowed/swcl) got merged recently, which is pretty cool news for SBCL users.
-
ELS 2023 is today and tomorrow - and it's live on Twitch
Slides about the ongoing parallel garbage collector for SBCL: https://applied-langua.ge/~hayley/swcl-presentation.pdf (https://github.com/no-defun-allowed/swcl)
-
Garbage Collection benchmarks?
There is this document which details how the collector works.
-
Programming Language - Ranking
You want some steel wool for that, or...
-
Mini Lisp in under 1k lines of C: Cheney or mark-sweep GC, which is best?
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.
-
Creator of SerenityOS announces new Jakt programming language
I say this while failing to design a parallel GC for SBCL for my second time; but I was unaware of the more clever RC schemes until recently, as nor myself nor my older colleagues seemed to have only used naive RC.
-
The self-hosted Zig compiler can now successfully compile itself
"the distributed system" is the first link, garbage collector is this link; again I wrote the backend for SICL as well as other parts, and I didn't say I made a language.
lisp
Posts with mentions or reviews of lisp.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-20.
-
Microcontroller-based Lisp machine (minimum language needed)?
Lately, we run Robert van Engelen's 1k Lisp on ESP32 and 8266 boards: https://github.com/Robert-van-Engelen/lisp but we started on his tiny Lisp: https://github.com/Robert-van-Engelen/tinylisp (which is 99 lines of C)
-
Mini Lisp in under 1k lines of C: Cheney or mark-sweep GC, which is best?
A mini Lisp with mark-sweep GC
What are some alternatives?
When comparing swcl and lisp you can also consider the following projects:
gc-latency-experiment - Exploring some worst-case latencies in GCs, inspired by a post on GHC's runtime pause times: https://making.pusher.com/latency-working-set-ghc-gc-pick-two/
bdwgc - The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (bdwgc, also known as bdw-gc, boehm-gc, libgc)