Tuesday, September 25, 2007

Java Makes It Hard to Find Good Help These Days...

From the Google-alerts-are-cool department:

Leif Frenzel has posted an interesting blog entry on the difficulties of creating tools for non-Java languages in Eclipse. He argues that in order to have tools that rival JDT, you have to have complicated tools that have intimate knowledge of the syntactic structure and semantics of the user's code, and this is hampered by the inability to code plug-ins easily in anything but Java. It's hard to find for example a parser generator that can handle Haskell, unless you're willing to use a parser generator written in Haskell itself. Go read it. Interesting food for thought.

Leif argues that this makes it hard for the community to contribute, because inherently the people that are most interested in seeing support for the language in question are people that are heavy users of that language, which also means that it's likely that their primary language of choice is not Java.

This makes sense to me because I've seen it first hand when trying to hire new members of my team that works on CDT. It's difficult to find people that have both good Java skills (needed for writing plug-ins), and a good knowledge of C and C++ (needed to know what the heck our plug-ins should be doing).

Would we find it easier to get help on CDT (both in terms of new hires, and in terms of help from the community) if people could write plug-ins in C++? Hmm... maybe...

Food for thought anyway. Personally I prefer writing my plug-ins in Java, thanks.

2 comments:

Mike Kucera said...

I ran into this blog post a while ago that describes using eclipse PDE to write plugins in Scala. I think this is only possible because 1) Scala compiles into Java bytecode 2) you can call Java API's from Scala and 3) a Scala plugin exists for eclipse. I wonder how much of the Scala plugin is itself written in Scala.

Anonymous said...

i think all languages are almost the same, so if you know c++ you should have no problem writing plugin in Java or another way around. However doesnt C++ programmer feel they are better because C++ is faster and they like better C++ IDEs ?