Although I personally am making an earnest effort to use Nim for what I expect to be a large, long-term project, I don't think that's where Nim is right now in any broad sense. Rather, I think Nim is a fascinating exploration in programming language design. It has lots of great ideas, occasional brilliance in how features synergize, lots of half-finished and/or half-documented ideas, and some lingering flaws. (And no, I don't claim to know which is which! :-) )
I see nothing wrong with this at all. For me personally, it's a feature not a bug, because I have some hope of influencing Nim's direction -- just in the margin -- in areas I care about most. But I think it would be dangerous rather than helpful to promote Nim more at this stage. One reason is that many would-be Nim programmers will still have bad experiences until we harden code and improve documentation. Another is that we risk joining the unhappy club of languages who get panned by lots of programmers because everyone has heard their names and assumes that, if they were any good, they'd be popular by now. (D, Haskell, and O'Caml come to mind.) Another is that we simply aren't at 1.0 -- for most programmers, a language with no backward compatibility guarantee is pointless. I am _glad_ we have a low TIOBE rank at this stage! It seems to me that a strong move toward mainstream acceptance (e.g. breaking into top 50 TIOBE with upward momentum) would need the following ingredients: * A clear statement that you will have a great experience with Nim if you are doing XYZ. * A strong hit rate (75%?) that programmers who try XYZ in Nim have a great experience. (The broader we make XYZ, the more work required to clear that bar.) * Declaring 1.0 on the above basis. * At least a subliminal case -- maybe an explicit case -- that if @Araq gets tired of this or gets hit by a bus, it doesn't all evaporate.
