-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite garbage collector and memory allocator #9
Comments
Is this for the main Crystal Lang or for Lilith specifically? |
Both? The compiler will be patched to output additional garbage collector data which can then be used by the new GC. The new GC will hopefully be more portable so it can be reused in userspace's libcrystal |
That is awesome I cannot wait to see what you end up doing :) |
What's the status of this feature, and where can it be found? I'm curious about the possibility of merging your GC into the stdlib |
@dscottboggs It's pretty complete on the OS so far, I haven't had crashes. I tried porting it to crystal proper, but I couldn't get it working (I think this is because the actual stdlib uses much more complex data structures than mine does). But feel free to port it I guess, all of it lies under the |
The current incremental garbage collector/memory allocator is great and all but leaves a lot to be desired. I'm thinking of rewriting a new one.
GC
the stack/data segments in order to get the root objectsIdeas
a linked-list-based stack? (the current gc does this)Memory allocator
The text was updated successfully, but these errors were encountered: