4 ms·
One of the best intros to generational garbage collection is on chicken internals[1]. If you've ever wondered about GCs I thoroughly recommend giving the articl
by Reisen 8y ago
One of the best intros to generational garbage collection is on chicken internals[1]. If you've ever wondered about GCs I thoroughly recommend giving the article a read, it's full of interesting asides as well.
I think I would use chicken more but usually when reaching for scheme it seems to be because I want something embeddable. Even so, extremely excited about this release!
[1]: https://www.more-magic.net/posts/internals-gc.html https://www.more-magic.net/posts/internals-gc.html
- tsukikage 8y agoJOOI, what's your embeddable Scheme of choice?
- bjoli 8y agoGuile or Chibi depending on what I want. Guile is about 2mb and seriously fast. Chibi is tiny and not very fasy.
- zelly 8y agoDo you statically link Guile? Guile is a pleasure to work with, but I was under the impression that you can’t embed Guile because it’s GPL.
- admax88q 8y agoGuile ls LGPL. You can statically link to LGPL libraries so long as you also provide your program in "object form" so that the user can re-link their program with a different version of guile. See: https://www.gnu.org/licenses/gpl-faq.html#LGPLStaticVsDynamic https://www.gnu.org/licenses/gpl-faq.html#LGPLStaticVsDynami...
- nrclark 8y agoSurprised to see Guile weighing in at 2mb - my experience with it on Linux was a much larger install. What makes the Linux packages so much larger out of curiosity? I profiled it at more like 50-80mb when I compiled it a couple of months ago.
- bjoli 8y agoI meant weight as in extra RAM usage for the application I use it in.
- Iwan-Zotow 8y agoFemtolisp https://github.com/JeffBezanson/femtolisp https://github.com/JeffBezanson/femtolisp
- sjamaan 8y agoCHICKEN is just as suitable for embedding in C programs as for embedding C code in CHICKEN: https://wiki.call-cc.org/man/5/Embedding https://wiki.call-cc.org/man/5/Embedding The complete CHICKEN 5 runtime should be a bit smaller already than the CHICKEN 4 runtime, because we dropped some stuff, but if the runtime is still too large for your needs, you can make a custom build that omits certain components. Here's a small tutorial on how to do that: https://wiki.call-cc.org/generating%20the%20smallest%20possible,%20self-contained%20executable https://wiki.call-cc.org/generating%20the%20smallest%20possi...