Hello,
Nimrod caught my attention a while back, and lately I've been taking a closer look - it's a bit of a mindbender this language, but in a good way :-)
One question I have, is do you plan on targeting JavaScript in the future? It almost seems these days, any modern language that wants to make it in the wild needs to compile to JavaScript eventually - I suppose with Emscripten that would already be possible to some degree, but that doesn't answer questions about interoperability with JavaScript and so forth, and it looks like you already have the architecture in place to target different languages.
Also, when I've been speaking excitedly of this language to friends, they ask, what are the key differences from C++ which also has templates? Much cleaner syntax obviously, but ignoring the syntax, what is the key advantage of Nimrod over e.g. C++?
And finally, a big question on my mind is, what about the threading model? Most new languages provide a threading model that is easier for developers to exploit (and reason about) than e.g. semaphores, mutexes, and other "manual" synchronization concepts - and often something that scales better (is more lightweight) than native OS threads. Anything like that slated or already in the works for Nimrod?
Hello,
One question I have, is do you plan on targeting JavaScript in the future?
A Javascript backend already exists (in an "experimental" state according to the manual). It's described at the end of the manual: http://build.nimrod-lang.org/docs/nimrodc.html#the-javascript-target (documentation for development version but present in the stable release).