I'm curious what qualifies a language as a "dead-end", is it a function of a stagnating userbase and very little evolution? Or more because some design decisions are too incompatible with practical use? Or maybe because the target platform is too limited? All of the above? I wonder how much an important project in a language can help it keep from being a dead-end (ie. Gradle or Rails).