Conversation
Notices
-
Embed this notice
iced depresso (icedquinn@blob.cat)'s status on Wednesday, 11-Oct-2023 23:06:26 JST iced depresso writing an immix gc in nim is pretty cursed
nim already has gc's (though we use reference counting these days.) though its still possible to turn it off if i really wanted to go that route.-
Embed this notice
iced depresso (icedquinn@blob.cat)'s status on Wednesday, 11-Oct-2023 23:13:03 JST iced depresso @iska that project isn't far enough along yet :comfywoozy: the first milestone is ripping open PE files since you have to do that before you can slurp CIL data. -
Embed this notice
Iska (iska@catposter.club)'s status on Wednesday, 11-Oct-2023 23:13:05 JST Iska @icedquinn@blob.cat whoa you're actually writing immix? :blobcateyes2:
all I did is pass instructions into a lambda and called it a "compiled vm" :blobcatgoogly: -
Embed this notice
iced depresso (icedquinn@blob.cat)'s status on Wednesday, 11-Oct-2023 23:46:04 JST iced depresso @iska apparently there's a cool paper about using refcounts and only using the GC to resolve cycles. php and nim are using it. wonder how well it would work with immix (though the two together... might be overkill, heh.) -
Embed this notice
iced depresso (icedquinn@blob.cat)'s status on Wednesday, 11-Oct-2023 23:53:18 JST iced depresso @iska @hayley the bacon paper for trial deletion basically doesn't track an object until its reference count goes above one and then is decreased again.
when you decrease the refcount and don't destroy the object, it puts that object on the :blobcatpolicedonut: list. so instead of scanning the world, it only scans stuff that has ever looked sussily like a cycle of self-dependence.
apparently its good enough for PHP, Nim and IBM's internal java projects, but the nim page did note that the cycle gc has some inconsistent scanning times. -
Embed this notice
Iska (iska@catposter.club)'s status on Wednesday, 11-Oct-2023 23:53:25 JST Iska @icedquinn@blob.cat you can use reference counting on old objects, @hayley@social.applied-langua.ge did that in her implementation on SBCL
-
Embed this notice
Hayley (hayley@social.applied-langua.ge)'s status on Thursday, 12-Oct-2023 09:17:22 JST Hayley @icedquinn @iska very well: https://users.cecs.anu.edu.au/~steveb/pubs/papers/lxr-pldi-2022.pdf https://users.cecs.anu.edu.au/~steveb/pubs/papers/rcix-oopsla-2013.pdf iced depresso likes this. -
Embed this notice
Hayley (hayley@social.applied-langua.ge)'s status on Thursday, 12-Oct-2023 09:18:16 JST Hayley @icedquinn @iska The IBM Recycler has cycle collection run concurrently. LXR does a concurrent full trace (necessary because it uses two bit saturating refcounts) too. iced depresso likes this.
-
Embed this notice