From: umptious@... (JC) Date: 2005-02-25T01:35:01+09:00 Subject: Comments on starting with Ruby Very quickly, with no attempt at eloquence at all... Tremendously good points: * The language design is an excellent balance between power and friendliness and intuitive behaviour and logically consistently behaviour. It's more likeable even than Smalltalk. * Well-implemented blocks, multiple assignment and return values, mix-ins. * The core library seems particularly well-designed. It's consistent, powerful, well-structured, and not over-bloated. I hope that Ruby never degenerates into the hell of the Common Lisp libraries thorough trying to do too much. * Excellent language documentation in the form of the Pragmatic book - perhaps the best there is for starting any language * Very quick to code in, easy to write comprehensible code, no mis-features like Perl's Masonic variable prefixes Very bad points: * Poor documentation and questionable reliability of basic tools - possibly this is more of an issue for Windows users? Eg I had to do a newsgroup search to find out how to load a ruby file and change directory in IRB (a user with less experience of dynamic and intrepreted langauges might not have known that doing so was likely to be possible, off course, so would never have done the search), no docs on how to use the debugger in FreeRIDE, said debugger not being able to show the value of variables, confusing help in the Ruby GDB style debugger. The upsetting thing is that these are all issues that are especially likely to lose potential new users, who will often be testing Ruby against very stable and well documented Python tools. If such basic tools and docs are shakey they can create FUD that affects potential users' view of the whole language. A couple of extra paragraphs on IRB in the Pragmatic book, pulling FreeRIDE (or disabling the debugger) in the Windows distribution until the debugger is usable, and a few extra sentences in the Ruby GDB-ish debugger's help could make a huge difference to how the language spreads. (And yes I would be willing to write the extra "gotcha" text for debugger and IRB - who do I speak to about that?)