[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Re: "stereotyping"

Austin Ziegler

11/20/2003 3:56:00 AM

On Thu, 20 Nov 2003 10:17:36 +0900, Sean O'Dell wrote:
> On Wednesday 19 November 2003 04:22 pm, Eric Schwartz wrote:
>> But it doesn't clear the air, it only pretends to, and only in
>> some cases.
> But, as with Ruby's dynamic typing, that's good enough. [...] It
> follows then that an interface declaration system would work the
> same way. [...]

An interface declaration system is useless unless it's used. I
frankly don't see ever using it in my libraries.

> This is why I feel the worry over half-implemented interfaces is
> unfounded. This isn't a static typing system, it's just a
> declaration system.

The same is achieved through Ruby without an unnecessary declaration
system.

> What I think is that so many people have expounded for so long on
> dynamic typing that it's hard to admit that perhaps there's a
> benefit to something resembling type checking. Apparently there is
> too much invested in dynamic typing to compromise.

Incorrect.

> I give up here, if that's the case. I never close my mind to
> anything, and it seems that most people here are simply closed to
> the idea of anything resembling type checking.

Wrong. The reasons for not thinking that your proposal is useful
have been discussed several times. It is not a value-add. If there's
going to be an interface declaration system, it should be (a) easy
to use, and (b) optionally enforce the contract. Your system doesn't
do (b) and that makes it even worse because it's got a nonzero
mental cost when the alleged promise is broken.

-austin
--
austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.11.19
* 22.56.08



1 Answer

Sean O'Dell

11/20/2003 5:32:00 AM

0

On Wednesday 19 November 2003 07:56 pm, Austin Ziegler wrote:
> On Thu, 20 Nov 2003 10:17:36 +0900, Sean O'Dell wrote:
> > On Wednesday 19 November 2003 04:22 pm, Eric Schwartz wrote:
> >> But it doesn't clear the air, it only pretends to, and only in
> >> some cases.
> >
> > But, as with Ruby's dynamic typing, that's good enough. [...] It
> > follows then that an interface declaration system would work the
> > same way. [...]
>
> An interface declaration system is useless unless it's used. I
> frankly don't see ever using it in my libraries.

Thus the optional component of the RCR.

> > This is why I feel the worry over half-implemented interfaces is
> > unfounded. This isn't a static typing system, it's just a
> > declaration system.
>
> The same is achieved through Ruby without an unnecessary declaration
> system.

No, it is not. Methods have no way of informing anyone of their needs
currently. Not without a lot of messy code.

> > What I think is that so many people have expounded for so long on
> > dynamic typing that it's hard to admit that perhaps there's a
> > benefit to something resembling type checking. Apparently there is
> > too much invested in dynamic typing to compromise.
>
> Incorrect.

No, I think I got it right.

> > I give up here, if that's the case. I never close my mind to
> > anything, and it seems that most people here are simply closed to
> > the idea of anything resembling type checking.
>
> Wrong. The reasons for not thinking that your proposal is useful
> have been discussed several times. It is not a value-add. If there's
> going to be an interface declaration system, it should be (a) easy
> to use, and (b) optionally enforce the contract. Your system doesn't
> do (b) and that makes it even worse because it's got a nonzero
> mental cost when the alleged promise is broken.

Read the RCR. It's entirely optional, and it's extremely simple. Too simple,
as someone pointed out.

Sean O'Dell