I will update the Clojure and core.async versions to latest.
You're right I forgot to mention the JVM version in the benchmarks.
I'll be running fresh benchmarks once the current task I'm working on is done.
I will have to look into io-thread, not familiar with it.
Although my aim with the benchmarks is to have nearly identical code for all platforms without any platform-specific optimizations - I'm not sure yet how io-thread plays into that.
Will definitely add the JVM version and update Clojure dependencies and let you know when I have fresh benchmarks.
Libgoc is a Go-style CSP concurrency runtime for C: threadpools, stackful coroutines, channels, select, async I/O, and garbage collection in one coherent API.
By the way, to see a great example of how a modern game can be made using the classic Half Life engine, look at the fan made game Half Life: Echoes [1].
It actually looks pretty decent, and the gameplay is top notch.
I remember being so upset as a kid that my pinewood derby car never looked as good as anyone else's and that it never won. I didn't realize as a youth that the parents had built the other kids' cars, whereas I built mine entirely on my own.
Now that I have children, they, too, are feeling the grim disatisfaction of a stacked competition by losing to the other kids' parents in the pinewood derby.
I genuinely credit that experience with my attitude toward life (don't take anything too seriously, because everything we do is temporary, competition (I will work on my own when possible, to do my best, and if I win it is a reflection on my own skills and abilities), and helped me understand that no matter how good I am at something there is always someone who takes that thing far too seriously and will cheat to win.
Reference counting is ultimately a GC, although not a tracing GC which is the most common kind. I also don't really see the appeal of not having a GC in a language like that. If it doesn't compete with C/C++ for performance and low level support then not having a GC is no longer an advantage.
That said Koka still remains very cool for the effect system though, and I would really like to see it in a mainstream language!
Happy you find it cool!
I will update the Clojure and core.async versions to latest.
You're right I forgot to mention the JVM version in the benchmarks.
I'll be running fresh benchmarks once the current task I'm working on is done.
I will have to look into io-thread, not familiar with it.
Although my aim with the benchmarks is to have nearly identical code for all platforms without any platform-specific optimizations - I'm not sure yet how io-thread plays into that.
Will definitely add the JVM version and update Clojure dependencies and let you know when I have fresh benchmarks.