What about Nimrod?

A3c652c6832b95ef5c3e63e60527e1ab
0
Albertone 101 Feb 24, 2013 at 20:57

Lately I’ve been playing a little with the Nimrod programming language (http://nimrod-code.org/) and you know what? It’s amazing. A little preamble: during the last year I tried a lot of languages - especially native ones - in the hope of finding a modern and viable alternative to C++ - after all I think that one of the few benefits of being a indie-wannabe is that I can decide - at my own risk, of course - what languages/tools use. Well, of all the candidates Nimrod is without doubt the winner. BTW, it has a series of bindings/wrappers to popular libraries - OpenGL 4, SDL, the Windows api, etc - that many other more mature languages should envy! And, as far as my experience goes, they actually work! My actual pet project is entirely in C++, and while it’s still in infancy, the code base is too large and my Nimrod-legs are too weak to recode it in Nimrod, nonetheless I’m almost sure to adopt Nimrod in my future projects. Did anyone try this incredible language?

1 Reply

Please log in or register to post a reply.

A8433b04cb41dd57113740b779f61acb
0
Reedbeta 167 Feb 24, 2013 at 21:44

Neat; I hadn’t heard of it before. I like static typing with type inference; using dynamic languages for anything big feels like “building on sand” to me. Compilation to C is a smart choice since it lets you immediately build for any platform with a C compiler, link with C libraries, take advantage of all the optimizations C compilers already implement, use C debuggers, etc. I’ve been thinking of doing that for a hobby scripting language project I’m working on, too.

I’m not so sure about the idea of using macros for metaprogramming, but I haven’t read their docs in detail yet, so perhaps they’ve worked out a sane way to do it. The language seems thoroughly documented, too, so that’s a good thing. On the other hand, it’s another one of those silly languages that support indentation by spaces but not tabs…how barbaric. Haven’t people learned from the YAML fiasco not to do that? ;)