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

From: Dave Thomas <Dave@...>
Date: 2000-06-21 19:00:11 UTC
List: ruby-talk #3590
olczyk@interaccess.com (Thaddeus L. Olczyk) writes:

> On 21 Jun 2000 12:10:18 -0500, Dave Thomas <Dave@Thomases.com> wrote:
> 
> >> Maybe I was misunderstanding the original poster, but he seemed to be
> >> advocating DbC without any notion of types other than "object that responds
> >> to message X".  To state the obvious, if the language has a notion of
> >> interface, protocol, or type, it's merely necessary to check that the object
> >> conforms to that type, at compile-time or run-time, since the contract is
> >> available in the interface/protocol/type definition.
> >
> >Not always (there are issues with polymorphism) but in general.
> There are no issues with polymorphism. This is what polymorphism
> is all about. Yes there are programmers that can create issues ( eg by
> violating Liskov ), but there are no *good* programmers.

OK - I understand.

There's no need for any system of contract checking to be rigorous,
because we can rely on *good* programmers to follow the rules such as
LSP.

Wonder why we need contracts at all ;-)


DbC is a good discipline, but it does not *ensure* correctness. Anyone 
who codes as if it does is risking ignoring real problems.


Regards


Dave



In This Thread