Automatic garbage collection in C is possible with libraries like libgc, but with allocppx.pl, you can just preprocess your file into generating heaps, and these heaps can be used for memory allocation. The type of GC is used, mark and sweep + reference counting. Every memory allocation MAY have a trace, and this trace can be used to ‘refget’ and ‘refunget’. Heap items that are NULL or have 0 refs are collected via mark and sweep.

The generated code is very readable, you can just look at it to get a clue. However, this Perl document is annotated with POD so you can view it in man pages etc. I have submitted an ASCII render of the manpage in Gist.

I hope you enjoy this.

  • ChubakPDP11+TakeWithGrainOfSalt@programming.devOP
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    8 months ago

    Cool. I can’t see the implementation though? Thanks a lot man. Really means a lot. @Corbin knows a lot more though. (since I called Rust a ‘shitlang’ I realize you may be ironic — Since Rust is more of a ‘fandom’ than a ‘compiler’, but I’m not going to offend you by assuming so. If you are truly giving me props, it’s really appreciated! :D )