This looks awesome! Can you give more info on what you mean when you say that this new GC will provide a “deterministic memory management”?
For example, if I create a local seq or string variable on a procedure A, and that variable is only used within that procedure A or at most is used by procedures called within that procedure A, will it’s memory be freed immediately when the procedure A is done (and before other code is executed)? I guess my question is if this will behave like a shared pointer in C++ (or perhaps even like a unique pointer in certain cases)? That is, are there separate, non deterministic garbage collection events? Is this suitable for embedded, hard real-time code? Also, does this require anything that is not in nim v1.0?
