I think Nimrod is an interesting and potentially very useful language. I like the idea of nice, easy-to-read Python-like syntax, metaprogramming capabilities, static typing, and not trying to fit into the "everything that exists in the universe belongs in a Class".
That said, a lot of "great" languages have come and gone because of issues with gaining traction so I was thinking about how a great language gains that momentum and traction to take it to the next level, and I thought a model to follow was Clojure.
I guess most of you have heard of Clojure. Clojure has really come on the scene fast with a very substantial community, and quite a bit of code being used in production environments.
So here's a random list of Clojure's traits and benefits in no particular order. This is more of a stream of conscious list, not in a particular order.
So how does Nimrod develop a community? What is Nimrod's strengths and/or unique qualities. I think having a nice Python syntax is one. IMHO, Clojure gets unreadable fast.
Oh and personally, I'm glad that an IDE is being developed. One of my pet peeves are developers that have the attitude in 2013 that if the language is powerful enough then you don't need an IDE. Yeah, you don't need an IDE, but when you're used to the powerful capabilities of VS/Resharper or Jetbrain IDE it's hard going back to Emacs or Vim (Ok, I need vi keybindings ;)
I don't mean to come off as too opinionated. I like what I see from Nimrod, and just want to open a discussion on how to expand the community. Community is so important these days.
Personally, I think it just needs to get more out there - advertise more. They aren't doing much to attract new developers at the moment.
But I think this is more an intentional decision at the moment. The language is subject to change, and they're still working on some parts of it. If a language gets too much hype as an infant, people will lose that hype upon 1.0 release. And a ton of people will forget the "not finished" part and start going around "Nimrod is buggy and terrible and doesn't have BC!" And that would definitely hurt the language in the long run.
The community they have now is a decent size, and they're all good guys that really love the language. They're getting a lot done, very fast. They just convinced me to join up yesterday, in fact (which is why I'm not going to deep into things).
INCOMING BLATANT NIMROD WORSHIPPING
In terms of what's good about Nimrod - pretty much everything. The syntax is beautiful, it gives the developer the power instead of treating us like idiots. It's expansive yet I can easily remember most of the rules because they're so based off common sense. It stops worshipping OOP and gives into a more datatype-based paradigm which (IMO) is much more flexible. It's blazing fast from the very few benchmarks I've seen or done. I can't go on - I'll end up taking up all day writing.
And I only just started using the language. I'm sure I've barely scratched the surface on what it can do.
Essentially, Nimrod makes me think of what happens when you take all the good things of Go, C, maybe Ada and Rust, too - then put them in a language with the beauty of Python.
The only nitpicks I have are superficial, like wanting a "module X" system instead of basing off the file names. And maybe module aliasing (which I'm sure is possible with macros). Oh, and wanting the language to solve all my cyclic dependencies. But again, superficial.
The best advertisement for a language, tool, framework, whatever, is always people doing stuff with it. Projects written in nimrod raise its awareness and attract more developers. Of course, interesting projects draw even more attention. I find starting to write code is also the best way to learn about any language, so by simply trying to scratch your own itch you may well be developing the community.
If you want ideas for projects, there has been talk about reviving Claro, some cross platform GUI library, reimplementing it in nimrod. If that looks too big I'm sure others can suggest other smaller stuff. Maybe implementing a database ORM, maybe some web framework on top of jester, etc. Or maybe you find some stdlib module not good enough? Sometimes trying to rewrite one in a competing way can improve both.
Paraphrasing Ballmer: code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code, code.
EDIT: Cairo != Claro, my bad