zig-mark-sweep-gc VS mark-sweep

Compare zig-mark-sweep-gc vs mark-sweep and see what are their differences.

zig-mark-sweep-gc

:broom: Zig port of Bob Nystrom's simple mark-sweep GC (by justinethier)

mark-sweep

A simple mark-sweep garbage collector in C (by munificent)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
zig-mark-sweep-gc mark-sweep
2 11
4 702
- -
0.0 10.0
almost 2 years ago almost 4 years ago
Zig C
MIT License GNU General Public License v3.0 or later
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.

zig-mark-sweep-gc

Posts with mentions or reviews of zig-mark-sweep-gc. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-20.

mark-sweep

Posts with mentions or reviews of mark-sweep. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-26.
  • Let's Write a Malloc
    4 projects | news.ycombinator.com | 26 Nov 2023
    Never forget:

    https://journal.stuffwithstuff.com/2013/12/08/babys-first-ga...

    > Let me stress here that while this collector is simple, it isn’t a toy.

    > There are a ton of optimizations you can build on top of this—in GCs and programming languages, optimization is 90% of the effort—but the core code here is a legitimate real GC.

    > It’s very similar to the collectors that were in Ruby and Lua until recently.

    > You can ship production code that uses something exactly like this.

    > Now go build something awesome!

  • loxcraft: a compiler, language server, and online playground for the Lox programming language
    14 projects | /r/ProgrammingLanguages | 29 Apr 2023
    Bob Nystrom also has a blog, and his articles are really well written (see his post on Pratt parsers / garbage collectors). I'd also recommend going through the source code for Wren, it shares a lot of code with Lox. Despite the deceptive simplicity of the implementation, it (like Lox) is incredibly fast - it's a great way to learn how to build production grade compilers in general.
  • The Garbage Collection Handbook, 2nd Edition
    6 projects | news.ycombinator.com | 8 Apr 2023
    Bob Nystrom (of Game Programming Patterns, Crafting Interpreters, and dartfmt fame) also wrote a tutorial[1], of a precise as opposed to a conservative garbage collector.

    Regarding register scanning, Andreas Kling has made (or at least quoted) an amusing observation[2] that your C runtime already has a primitive to dump all callee-save registers onto the stack: setjmp(). So all you have to do to scan registers is to put a jmp_buf onto the stack, setjmp() to it, then scan the stack normally starting from its address.

    [1] https://journal.stuffwithstuff.com/2013/12/08/babys-first-ga...

    [2] https://youtu.be/IzB6iTeo8kk

  • Ask HN: Do you recall any book or course that made a topic finally click?
    6 projects | news.ycombinator.com | 14 Nov 2022
    - http://journal.stuffwithstuff.com/2013/12/08/babys-first-gar...
  • Garbage Collection with LLVM
    3 projects | /r/ProgrammingLanguages | 24 Sep 2022
    Might not be that hard: https://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/
  • Baby’s First Garbage Collector (2013)
    1 project | /r/patient_hackernews | 10 Aug 2022
    1 project | /r/hackernews | 10 Aug 2022
    1 project | /r/hypeurls | 9 Aug 2022
    2 projects | news.ycombinator.com | 9 Aug 2022
  • Reference Count, Don't Garbage Collect
    9 projects | news.ycombinator.com | 29 Jul 2022
    To better understand garbage collection, nothing better than implementation. This article is such a joy to read:

    https://journal.stuffwithstuff.com/2013/12/08/babys-first-ga...

What are some alternatives?

When comparing zig-mark-sweep-gc and mark-sweep you can also consider the following projects:

zig.vim - Vim configuration for Zig

c-examples - Example C code

ziglings - Learn the Zig programming language by fixing tiny broken programs.

zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

mmtk-core - Memory Management ToolKit

mach - zig game engine & graphics toolkit

git-from-the-bottom-up - An introduction to the architecture and design of the Git content manager

bun - A fast all-in-one JavaScript runtime [Moved to: https://github.com/oven-sh/bun]

ixy-languages - A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python

rust-gc - Simple tracing (mark and sweep) garbage collector for Rust

Mesh - A memory allocator that automatically reduces the memory footprint of C/C++ applications.