> How would you handle the different GCs? or maybe there is no special handling > needed?
For Julia, the way I did it in [nimjl](https://github.com/Clonkk/nimjl) is that I wrapped the GC-routine as well in templates. This allows you to : * Convert most type by copy (except Arrays) Nim <-> Julia are done by copy so there's no overlap * Root memory allocated in Julia's VM to a specific scope so it doesn't get free'd while you're using it * For Arrays, you can allocate it in Nim and pass the buffer allocated by Nim to Julia (and Julia then knows not to touch it).