[#3109] Is divmod dangerous? — Dave Thomas <Dave@...>

14 messages 2000/06/06

[#3149] Retrieving the hostname and port in net/http — Roland Jesse <jesse@...>

Hi,

12 messages 2000/06/07

[#3222] Ruby coding standard? — Robert Feldt <feldt@...>

16 messages 2000/06/09

[#3277] Re: BUG or something? — Aleksi Niemel<aleksi.niemela@...>

> |I am new to Ruby and this brings up a question I have had

17 messages 2000/06/12
[#3281] Re: BUG or something? — Dave Thomas <Dave@...> 2000/06/12

Aleksi Niemel<aleksi.niemela@cinnober.com> writes:

[#3296] RE: about documentation — Aleksi Niemel<aleksi.niemela@...>

> I want to contribute to the ruby project in my spare time.

15 messages 2000/06/12

[#3407] Waffling between Python and Ruby — "Warren Postma" <embed@...>

I was looking at the Ruby editor/IDE for windows and was disappointed with

19 messages 2000/06/14

[#3410] Exercice: Translate into Ruby :-) — Jilani Khaldi <jilanik@...>

Hi All,

17 messages 2000/06/14

[#3415] Re: Waffling between Python and Ruby — Andrew Hunt <andy@...>

>Static typing..., hmm,...

11 messages 2000/06/14

[#3453] Re: Static Typing( Was: Waffling between Python and Ruby) — Andrew Hunt <andy@...>

32 messages 2000/06/16

[#3516] Deep copy? — Hugh Sasse Staff Elec Eng <hgs@...>

Given that I cannot overload =, how should I go about ensuring a deep

20 messages 2000/06/19

[#3694] Why it's quiet — hal9000@...

We are all busy learning the new language

26 messages 2000/06/29
[#3703] Re: Why it's quiet — "NAKAMURA, Hiroshi" <nahi@...> 2000/06/30

Hi,

[#3705] Re: Why it's quiet — matz@... (Yukihiro Matsumoto) 2000/06/30

Hi,

[ruby-talk:03151] Re: Is divmod dangerous?

From: Andrew Hunt <andy@...>
Date: 2000-06-07 13:06:13 UTC
List: ruby-talk #3151
    >  use ZeroTrunc
    >  use CoffeeMachine
    >
    >So I'm very interested in to hear why 'this is horrible' :).
    >
    >    - Aleksi

I do not like the idea of including modules that change basic
behavior -- it violates the Principle of Least Surprise.

rant_mode.on

Consider C++.  When you're finished shuddering {:-)}, think about
the debugging nightmare that comes from careless and ill-conceived
operator overloaded.  You see:

    a = b + c

...and you have *no idea* what it really does.  You've got to
track down a.=, b.+, and maybe even a copy-constructor or two
before you know what code is being executed.

Of course, we can overload operators in Ruby as well, but now we
all know better and will do so with taste and style, right? :-)

It seems to me that a language should define it's mathmatical
model to be xxx, and that's it.  If you want different behavior,
use a different library *with different method names*, so that
the poor fool who comes along to read the code later has at least
a snowball's chance of figuring out what's going on.

I think div and divz is fine, but only one them should be "/" -
when I see "/" I'd like to know what is does, and not be
surprised.

rant_mode.off

/\ndy

--
Andrew Hunt, The Pragmatic Programmers, LLC.
Innovative Object-Oriented Software Development
web:   http://www.pragmaticprogrammer.com   email: andy@pragmaticprogrammer.com

In This Thread

Prev Next