From: Josh Cheek Date: 2011-08-10T16:02:34+09:00 Subject: Re: *WHY* does this not work? --20cf307ca1e8a54f5804aa2143ee Content-Type: text/plain; charset=ISO-8859-1 On Wed, Aug 10, 2011 at 1:40 AM, Mike Stephens wrote: > > Whilst Ruby is probably a perfectly logical and self-consistent language > I personally think it has no right whatsoever to claim least surprise. > > I've always said Matz finds Ruby unsurprising, but that's because he > wrote it. > > -- > Posted via http://www.ruby-forum.com/. > From http://www.artima.com/intv/ruby4.html Bill Venners: In an interview, you said "I designed Ruby to minimize my surprise. I was very amazed when people around the world told me that Ruby reduced their surprise and enhanced their joy of programming. Now I'm pretty sure that programmer's minds are alike all over the world." Why the principle of least surprise? Yukihiro Matsumoto: Actually, I didn't make the claim that Ruby follows the principle of least surprise. Someone felt the design of Ruby follows that philosophy, so they started saying that. I didn't bring that up, actually. I wanted to minimize my frustration during programming, so I want to minimize my effort in programming. That was my primary goal in designing Ruby. I want to have fun in programming myself. After releasing Ruby and many people around the world got to know Ruby, they said they feel the way I feel. They came up with the phrase the principle of least surprise. But actually, it's often misunderstood. Bill Venners: How is it misunderstood? Yukihiro Matsumoto: Everyone has an individual background. Someone may come from Python, someone else may come from Perl, and they may be surprised by different aspects of the language. Then they come up to me and say, "I was surprised by this feature of the language, so therefore Ruby violates the principle of least surprise." Wait. Wait. The principle of least surprise is not for you only. The principle of least surprise means principle of least my surprise. And it means the principle of least surprise after you learn Ruby very well. For example, I was a C++ programmer before I started designing Ruby. I programmed in C++ exclusively for two or three years. And after two years of C++ programming, it still surprised me. --20cf307ca1e8a54f5804aa2143ee--