Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can do it in C for sure, but "culturally" in C, there's a stateless global allocator called "malloc", which is not the case in Zig. For instance, if you have a library libsomething in C, it will at most (probably) have something like this:

    #ifndef LIB_MALLOC
    #define LIB_MALLOC malloc
    #end
if it allows you to customize allocation strategy at all, which is not a given.

But this only allows you at compile time to provide your own stateless global allocator. This is very different in Zig, which has a very strong culture of "if something needs to allocate memory, you pass it a stateful, dynamically dispatched allocator as an argument". You COULD do that in C, but virtually nobody does.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: