[#6660] Ruby on Neko ? — Nicolas Cannasse <ncannasse@...>

Hi folks,

14 messages 2005/11/19

[#6672] testing for hardlink with "test(?-, ...)" flawed on Windows — noreply@...

Bugs item #2858, was opened at 2005-11-20 16:35

13 messages 2005/11/20

[#6684] semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...>

Hi all,

81 messages 2005/11/21
[#6685] Re: semenatics of if/unless/while statement modifiers — Mauricio Fern疣dez <mfp@...> 2005/11/22

On Tue, Nov 22, 2005 at 08:22:59AM +0900, Stefan Kaes wrote:

[#6686] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

Mauricio Fern疣dez wrote:

[#6687] Re: semenatics of if/unless/while statement modifiers — Eric Hodel <drbrain@...7.net> 2005/11/22

On Nov 21, 2005, at 4:37 PM, Stefan Kaes wrote:

[#6689] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

Eric Hodel wrote:

[#6693] Re: semenatics of if/unless/while statement modifiers — Yukihiro Matsumoto <matz@...> 2005/11/22

Hi,

[#6695] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

Yukihiro Matsumoto wrote:

[#6718] Re: semenatics of if/unless/while statement modifiers — mathew <meta@...> 2005/11/22

[#6722] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

mathew wrote:

[#6707] Re: semenatics of if/unless/while statement modifiers — "David A. Black" <dblack@...> 2005/11/22

Hi --

[#6708] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

David A. Black wrote:

[#6714] Re: semenatics of if/unless/while statement modifiers — "David A. Black" <dblack@...> 2005/11/22

Hi --

[#6717] Re: semenatics of if/unless/while statement modifiers — Stefan Kaes <skaes@...> 2005/11/22

David A. Black wrote:

[#6798] ruby 1.8.4 preview2 — Yukihiro Matsumoto <matz@...>

Hi,

37 messages 2005/11/30

Re: semenatics of if/unless/while statement modifiers

From: mathew <meta@...>
Date: 2005-11-25 16:12:56 UTC
List: ruby-core #6786
On Nov 22, 2005, at 11:40 AM, Mathieu Bouchard wrote:

> Well, pretend you have a real one... and it'll behave like a real one.
>
> How pickier is it possible to get?

We're discussing language semantics here, 'picky' comes with the  
territory.

> It's not a matter of deciding what's the best overall type of loop and
> call all other ones ugly. Just pick the appropriate construct for the
> situation. The construct is the appropriate one if it doesn't make you
> jump through hoops.

I'd say that's the Perl philosophy--give the programmer every kind of  
construct imaginable, and trust that they'll pick the right ones.

The problem is that it bloats the language. Consider operators--there  
are a lot of operations that can naturally be expressed as infix  
operators. The Perl approach is to say well, let's have an operator  
for all of them, even if there are other ways to express the same  
thing, because what's important is not making the programmer jump  
through hoops. If they find it natural to express something as an  
operator, let them. The result is the Periodic Table of the  
Operators, <URL:http://www.ozonehouse.com/mark/blog/code/ 
PeriodicTable.html>, and a language that has 22 precedence levels.

I just don't have the brain space to deal with that amount of  
complexity. I think most people don't. That's one of the reasons why  
so many people think of Perl as a "write only" language--one  
programmer will pick up a dozen favorite structural idioms from the  
hundreds available, another will pick up a different dozen, and the  
two will be unable to read each other's code.

Then there's the effect it has on uptake of the language. C++ is  
another "give 'em everything and trust them to use it the right way"  
language, and as a result it takes 2-5 years to become proficient in  
it. And that's assuming you don't have to deal with code where  
someone has decided to make use of the ability to define your own  
operators and looping constructs...

Note that I'm not saying that this one addition of true post-test  
loops to Ruby would be a disaster. I'm just explaining why in  
general, syntactic features are not 'free', and giving programmers  
too much choice of how to express things can ultimately be bad for  
the language as a whole, and even bad for the programmers themselves.


mathew

In This Thread