←back to thread

188 points refset | 6 comments | | HN request time: 1.147s | source | bottom
1. fire_lake ◴[] No.41867415[source]
IIUIR, Clojure uses the JVM garbage collector to clean up memory.

How does Jank do this whilst keeping the user code… still Clojure?

replies(1): >>41867713 #
2. refset ◴[] No.41867713[source]
Jank uses Boehm GC (written in C, also used by the likes of Inkscape, Guile and Mono) - it is discussed a little in the previous blog posts, e.g. https://jank-lang.org/blog/2023-07-08-object-model/
replies(2): >>41868176 #>>41869742 #
3. k_g_b_ ◴[] No.41868176[source]
Guile seems to prepare to switch to https://github.com/wingo/whippet - a GC C library that can wrap Boehm/BDW but also provides more (and less) advanced GC options. Should be a good option for Jank and similar projects as well - especially if they already use BDW.
4. gaze ◴[] No.41869742[source]
Have you considered MPS? https://github.com/Ravenbrook/mps .
replies(2): >>41870047 #>>41871994 #
5. refset ◴[] No.41870047{3}[source]
I'm just an enthusiastic bystander so I don't know the answer. Hopefully Jeaye can chime in.
6. Jeaye ◴[] No.41871994{3}[source]
Yep! MPS was considered, but Boehm was significantly easier to get going. For jank's next GC, the plan is to use MMTK.