From: Song Ma Date: 2008-04-09T12:28:06+09:00 Subject: Re: Ruby’s not ready - an indepth essay ------=_Part_17013_11118664.1207711684891 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline > > 2. My main concern is not with the documentation. My main concern is that > both the syntax and semantics of the language seem to be more fluid than > "pragmatic" considerations would dictate. I more or less grew up with > FORTRAN, although I missed FORTRAN I. So I'll use its evolution as an > example. > > Ten years into its evolution, an ANSI committee was formed to standardize > the language. Users and vendors sat around a huge table and thrashed out > what would break the least code, what was easy to implement, what kinds of > programs people wanted to write in the language that they couldn't, etc. The > result was FORTRAN 66. 11 years later there was FORTRAN 77, etc. > > Now FORTRAN is 50 years old, there's a FORTRAN 95 standard, and the > language is still in use (I think -- I haven't written any since 1990). Ruby > is a tad older than ten years, and I think maybe it's time for some > standardization on the syntax and semantics. > > I think there are enough "killer apps" now that we know what we can't take > out of Ruby without breaking Rails, RSpec, Ruport, etc. And from MRI, KRI, > jRuby and Rubinius, I think we know what's easy to implement and what isn't. > But what I have no clues about is what programs people want to write in Ruby > that they can't write now. > > > This is the insightful point I was expecting after following such a long mail chain. Now I am implementing one Rails application which requires to be supported by both MRI (1.8.5) and JRuby (1.0.3, compatible with MRI 1.8.5). I found so many inconsistencies between these two "Ruby". (Or Rubies?). Even the MRI test cases can not pass in JRuby. That's painful. I remembered Charles Nutter asked Matz in RubyConf 2007 if there is going to have any specification for Ruby. But apparently it doesn't happen. ------=_Part_17013_11118664.1207711684891--