nevalang / neva

🌊 Dataflow programming language with static types and implicit parallelism. Compiles to native code and Go
https://nevalang.org
MIT License
94 stars 7 forks source link

Memory Arena? #744

Open emil14 opened 3 days ago

emil14 commented 3 days ago

Arena is a way to allocate a bulk of memory beforehand that is not visible to garbage collector and thus 1) allows for lesser stop-the-worlds 2) require manual management

Nevalang programs are message-heavy so it would be possible to use arena to pre-allocate memory for N messages and then use it inside NewXXXMsg(...), the only question (probably?) is when to free memory

emil14 commented 3 days ago

This probably should not be done before language 1) stabilizes much more than today 2) we have some solid benchmarks to believe in