[Aaron-devel] What language to use for aaron (short and long term)?
Status: Pre-Alpha
Brought to you by:
thetitan
From: Sean C. <sea...@it...> - 2001-06-27 23:37:46
|
Alright, so here's the topic at hand: what language to use. In the interest of being obvious, I think it's a no-brainer that we want to use C or C++ for the long term. The speed and performance gains can't be matched by an interpreted language. Any objections to that? =20 Alright, now let's focus on the short term (up to version 1.0 See ROADMAP for more details about 1.0 and beyond). I've been playing with Ruby for a while and finally went and picked up a book on Ruby, Programming Ruby. I'm stoked and sold. Some features of ruby that have convinced me to give it the go: nice exception handling, plenty of modules and support, threads, regular expressions, pure OO language, hashes, forking, lots of socket support, mutexes, and the language's design is elegant and well thought out. =20 Compared to other languages that have been hacked together out of need, Ruby is very well put together and it strikes me as elegant, and that seems to be rare these days. In terms of features and being a developer, I couldn't hope for any more features to be included in one language. Ruby -> C shouldn't be too bad either. Why not Perl? Threading is a nightmare-ish mess that won't get resolved before perl6 (or that's what I fear). Just firing up the perl interpreter is pretty expensive operation (2MB base for each concurrent operation? No way). All communication between processes would have to be done over un-named pipes, which isn't bad, but managing a lot of those can get ugly (esp to debug). Setting up a messaging API for pseudo-mutex locking would be hell and I'm not up for that. Why not PHP? PHP's a web scripting language. There's more support for ruby than PHP in terms of app development and libraries. =20 'nuff said. Why not Java? This answer'll come back to bite me someday, I know it. I just don't like Java. Flat out: I've had bad experiences with the language in terms of memory usage and performance. The fact that everyone preaches it as the solution to the world's hunger problems and that it's been so heavily marketed is also disturbing. The rate at which they're pumping bozos who know only Java out of college these days is also ticking me off. It's a programming language or tool, not a way of thinking and because I'm quasi-resentful of Java I'm tossing a big 'ole fuck you toward Sun. Plus, Solaris is a clunky fucking operating system when compared to BSD. I dislike working on it but have to support it and it irks me to death that it's so widely used yet so poorly developed and thought out. So blah, there's my opinion. More thoughts to come in responses to my own opinion. -sc --=20 Sean Chittenden |