And to be fair my Coroutine implementation is very close to Lua's Coroutines 
(because I wrapped a library of a talented guy who created a compiled version 
of Lua), but I never used Coroutines in Lua before, neither Java virtual 
threads.

I took inspirations from everywhere, finally, it resembles Go when we don't 
look closely. But it does a lot of things drastically differently :

  * timeouts are supported
  * "spawning" a function returns a Task-like object, that is a first class 
citizen. It could be waited (no waitGroup), it has a return value
  * I privileged Nim's idiomatic over Go's
  * The whole IO API (which I named GoFile, GoStreams, etc) has nothing in 
common with Go, it looks like Nim's sync library but with more OOP (this last 
word will I think trigger Araq^^)


Reply via email to