[#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:03577] Re: Static Typing( Was: Waffling between Python and Ruby)

From: Hugh Sasse Staff Elec Eng <hgs@...>
Date: 2000-06-21 09:09:00 UTC
List: ruby-talk #3577
On Wed, 21 Jun 2000, Frank Mitchell wrote:

> [...] (I also believe not specifying the *contract* of each involved
> object's methods is a mistake.  On a large-ish Objective-C system I worked
> on we had a few bugs caused by passing the wrong object that just happened
> to implement the right method in the wrong way.  E.g. "price" as a message
> to return an attribute vs. "price" as a command to initiate an involved
> calculation with numerous side effects which fails because the object isn't
> in a consistent state.)

I'm not sure how one would solve this one.  It seems to me that the
caller would need to say something like 

	object.price() unless "method price changes something"

which is testing for the correct postcondition.  (Changing the names to
compute_price, and return_computed_price would work but when using objects
designed by other people, these people can call the methods what they
like, so you cannot rely simply on names.)

Is there any way to test whether postconditions will be correct?

> 
> Frank
> 
	Hugh
	hgs@dmu.ac.uk


In This Thread