Sean O'Dell
11/20/2003 5:32:00 AM
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