From: Christian Szegedy Date: 2002-10-12T09:32:44+09:00 Subject: Re: Things That Newcomers to Ruby Should Know William Djaja Tjokroaminata wrote: > Hi Christian, > > It is a very interesting reading. Now I realize more and more that all > the problems that are explicitly exposed when someone learns C++ do not > simply disappear in Ruby. For example, C++ explicitly differentiates > "+" from "+=", C++ explicitly discusses assignment operator and copy > constructor, etc. Moreover I also started a discussion (like you) about the possibility of extending Ruby by (optional) type constraints to enable more optimization. Then,I was said these are common symptoms that Ruby beginners have... :) > > I guess part of the "magic" of Ruby is a conscious design decision on what > problems are to be suppressed (such as making "a += b" as simply an alias > of "a = a + b" at the cost of some performance and not providing a deep > copy method) in its OO design. Well said. In fact, I think, matz has a very clear design philosophy: Conciseness and naturalness has always higher priority than performance. Of course it does not mean that things are slowed down unnecessarily, but he never compromises the first for the latter. This must be hard because there is a lot of temptation, but he seems to succeed somehow ;) Best Regards, Christian