[#6363] Re: rescue clause affecting IO loop behavior — ts <decoux@...>

>>>>> "D" == David Alan Black <dblack@candle.superlink.net> writes:

17 messages 2000/11/14
[#6367] Re: rescue clause affecting IO loop behavior — David Alan Black <dblack@...> 2000/11/14

Hello again --

[#6582] best way to interleaf arrays? — David Alan Black <dblack@...>

Hello --

15 messages 2000/11/26

[#6646] RE: Array Intersect (&) question — Aleksi Niemel<aleksi.niemela@...>

Ross asked something about widely known and largely ignored language (on

23 messages 2000/11/29
[#6652] RE: Array Intersect (&) question — rpmohn@... (Ross Mohn) 2000/11/29

aleksi.niemela@cinnober.com (Aleksi Niemel) wrote in

[#6723] Re: Array Intersect (&) question — Mathieu Bouchard <matju@...> 2000/12/01

> >Use a hash. Here's code to do both and more. It assumes that

[#6656] printing/accessing arrays and hashes — raja@... (Raja S.)

I'm coming to Ruby with a Python & Common Lisp background.

24 messages 2000/11/30

[ruby-talk:6615] Re: Question on sort!

From: Mathieu Bouchard <matju@...>
Date: 2000-11-29 04:37:08 UTC
List: ruby-talk #6615
> The latter can be avoided if one follows the no-bang-method-chain
> rule.  But I don't force you to agree with me (yet ;-).

If a justification is required, i'd say that the no-bang-method-chain rule
follows the if-it's-not-necessary-to-return-a-value-it-is-necessary-not-to
rule. 

In particular, method chains rely on all the relevant methods to follow
some specific meta-protocol about return values. The feature of being able
to chain messages is thus implemented in hundreds and thousands of places,
which most blatantly violates the DRY principle. The most exploded case of
non-modularity.

If you want to do this right, add an operator that picks the result of the
next-to-last expression:

foo.bar $ .qux    # same as foo.bar; foo.qux


And if you don't want to add it, well, don't.

matju



In This Thread