On Sat, 12 Feb 2005, Adriano Ferreira wrote: > Without offense, one can say that Ruby is Smalltalk made right (or at > least one way to make it right). If if by "making it right" you mean going back to imperative languages and irregular syntax. Smalltalk already had pretty good iterators; why add the imperative "while"? Smalltalk itself is so powerful that it doesn't even have an "if" statement. Ruby is that powerful too, but a lot more awkward. (It's probably more awkward because it does have an "if" statement and therefore never had to make things like a generic block statement that was as syntatically light as possible.) And I find the highly irregular syntax very frustrating. What does something in braces mean, for example? It depends on where it appears in the program. Why do I use one syntax when passing only one block to a method, but a different syntax when passing two? And so on. Irregular syntax combined with too many different ways of doing things makes learning much harder, becuase you can't naturally work out how to do things, you need to discover the tricks. (I just about fell over when I discovered you could use "rescue" before "end" for a function, as well as after a "begin." But you can't use it for "if". There seems to be no logic you can use to guide you to say where you can and can't use it.) I think ruby has been reasonably successful for a couple of reasons. 1. One thing it did get right was to integrate well into the Unix environment. If we had a good Smalltalk that did that, I'd be all over it. 2. Java has been around along enough that many programmers have absorbed the incremental improvements it offered over C++ and other languages of the day, and are now starting to discover how backward in many was Java really is. So now they're ready for another incremental improvement--but not one that's to big. Not a language, for example, without "if" statements. Ruby did get some other stuff right, such as having continuations in the language, but I don't think that sort of thing was much of a factor in its success. There will be a day when we nobody will take a language without continuations seriously, but that day is not here yet. (And the day where nobody takes seriously a language without type inference is even further away.) cjs -- Curt Sampson <cjs / cynic.net> +81 90 7737 2974 http://www.NetBSD.org Make up enjoying your city life...produced by BIC CAMERA