swcl
gc-latency-experiment
swcl | gc-latency-experiment | |
---|---|---|
8 | 1 | |
8 | 54 | |
- | - | |
0.0 | 0.0 | |
22 days ago | about 1 year ago | |
Common Lisp | Makefile | |
GNU General Public License v3.0 or later | MIT License |
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
-
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.
gc-latency-experiment
-
Garbage Collection benchmarks?
There's this repo which is more for latency than throughput, and the annoying part of a message bus. But I think it's too cruel on copying collectors, as it only creates large-ish byte arrays that a collector has to keep copying around; moving from a generational-copying collector to a generational-mark-region collector cut latency down about a factor 4 on its own.
What are some alternatives?
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.
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.
ocaml - The core OCaml system: compilers, runtime system, base libraries
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
one-more-re-nightmare - A fast regular expression compiler in Common Lisp
sbcl - Mirror of Steel Bank Common Lisp (SBCL)'s official repository