> Each thread has its own Janet heap, which means threads behave more like processes that communicate by message passing.
https://janet-lang.org/docs/threads.html
Janet doesn’t seem to have shared-memory multithreading. Each thread runs independently, so a GIL should not be necessary.