Eclipse provides a very high-functionality IDE for Java, as well as for several other languages (e.g. C/C++, Python, Ruby). At this point, however, the cost of developing an IDE for a new language remains prohibitively high. This is due largely to the fact that although Eclipse offers a rich suite of building blocks for constructing a wide variety of applications, the set of APIs intended specifically for building IDEs is largely tied to specific languages. This precludes code reuse even where common concepts and language processing idioms already exist.
Moreover, building an IDE for Eclipse is an extremely knowledge-intensive task, requiring intimate understanding of hundreds or even thousands of interfaces and implementation classes. As a result, the learning curve is daunting, and there is not nearly enough guidance available to direct the IDE developer to the relevant interfaces and reusable implementation classes.