Wednesday, July 27, 2005

It Can't Be Done

Lothar Scholz said the following when asked why he didn't write his IDE in all Ruby (from the Ruby mailing list):
A script language is just not powerfull enough for this task (speed,
memory consumption and yes, speed) to do this.

For Ruby specific tasks i run simpler ruby scripts. And some parts are
written in Python but the core must be written in a static typed garbage
collected native compiled and imperative high level language. And
there he number of choices was very low in 2001.

Today i would choose a more cleaner D + Python system.

Ruby was never an option as it does not support native threads.

Now, I like Ruby, but I sometimes wonder with statements like the one above if he has looked at Smalltalk. I know Ruby runs slower than Squeak. But is it really too slow to support an IDE? I don't think so. Smalltalk is a perfect example of writing an IDE entirely in itself and it's been that way for a long time. It was even written on hardware that is not nearly as powerful as we have now. I think the problem is not that it can't be done, but how can you make your abstractions and objects work harder and do less. So, I wonder what the FreeRIDE (which is an all Ruby IDE) folks have to say. FreeRIDE is still rough around the edges, but every release it looks better and better. I would like to mention that Lother's IDE is good as well. Ruby is so close to Smalltalk and I think they would certainly enjoy an IDE that they could change at run-time and enjoy the same freedom that Smalltalkers do. It would certainly make Ruby more fun to program in. And that's a good thing!


Vincent Foley said...

You know the funny thing about that? Arachnod Ruby has some pretty heavy system requirements.

Rick Campbell said...