-- On Thu, 26 Sep 2002 14:06:50 John Williams wrote:
>We should respect default values if arrays can declare them. > >Perhaps there will be a modifier for operator declarations to declare what >the default behavior should be. Otherwise I don't know how different >behaviors for different operators would be possible, especially for >user-defined operators. Having an operator force some very narrow kind of context to control what the list returns is very strange. The list should respond in some generalized way (undef or whatever the list is set to pretend is undef) and have the operator choose how to respond to that, and return whatever it deems to be the "result" of the operation. Under this mechanic the only tricky part is figuring out when the list is exhausted and when it is passing the autoviv value legitimately. Related note, if we can define default values for a list, is that a compile time or runtime property. I confess as to not knowing quite how to tell. I would hope it was runtime for the syntax alone: @users but autovivs ("Anonymous User"); -Erik > sub operator:foo is hyper_default(1) ... >I agree with "Blech", but we can procrasticate doing it at least until >Damian makes it clear how operators will define their behavior. > >Otherwise, a contextualized undef (0 in numeric context, '' in string) >would seem DWIM to me. > >I wouldn't want to throw tons of warnings from one operation, so maybe >hyper-operating on unequal lengths gets a new warning, instead of throwing >lots of 'undefined value' warnings. > >~ John Williams > > Is your boss reading your email? ....Probably Keep your messages private by using Lycos Mail. Sign up today at http://mail.lycos.com