I think theres two problem with udon heap.
It seems that every variable in udon is allocated in Udon heap,and reference of the variable is implemented by uint address.
This means theres almost no way to implement GC in Udon,isn’t it?
Every variable in udon heap are boxed.
this will cause so many .NET GC running.
I thought a solution about this.
Use .NET reference directly instead of uint id and Udon heap.
Made a class to keep variables just in time using Dynamic Assembly.
I think we can also JIT compiles entire Udon Assembly to .NET IL(if theres no uint addresses and Jump Indirect).
This may improve Udon performance significantly.