From: Thien Vuong Date: 2003-11-20T16:42:15+09:00 Subject: Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) Austin Ziegler wrote: > On Thu, 20 Nov 2003 14:52:17 +0900, Thien Vuong wrote: > >>I'm in the same position too. Love Ruby but cannot recommend it >>for team development w/o having the language provides some sort of >>intrinsic interface validation. > > > Again: why? Why do you need intrinsic interface validation? As > Michael Campbell noted, if a library writer isn't going to document > their code, what makes you think that they're going to put interface > validation in there? > > That's what no one in this discussion has been able to explain. The > broad statement is made: "I need interface validation!" But no > convincing explanation as to why it's needed is made, either. OR why > interface validation is preferred to DbC or TDD -- both of which I > consider to be superior techniques to compile time type checking. > I'll take a shot here - sorry could not resist. The way it works for me is: what we need is based on a analysis of the requirement and the previous experience/learning of how this sort of things is done. And that is not based on what language we used before although it would probably has some influence. This is a decision/ intelligent choice. It would then be communicated to the team as the guideline on how to do it. We then monitor its progress/success/failure and make adjustment. If it works well - it got promoted to other groups, or even boast about it in comp.lang.ruby (on other thought, maybe not :). If not, oh well .... sorry... Who made that damn decision? Library writer good/bad behaviour is not relevant, because this is a group recommended/ enforced guideline - i.e. seek employment elsewhere if an individual does not wish to conform/be accounted to minimum project requirements. Can't wave hand and say we don't need that at all because it is the dynamic language Ruby - we can't guarantee anything. It may work with some of us (including me), but a non-starter to convince others. Agree that DbC is better for this particular requirement (which is only one of an design requirements) - but at this time, I am trying to use Ruby, not Eiffel. Thien