On Sun, May 01, 2005 at 10:59:59AM -0400, Aaron Sherman wrote: > On Sat, 2005-04-30 at 16:55 -0700, Brent 'Dax' Royal-Gordon wrote: > > Aaron Sherman <[EMAIL PROTECTED]> wrote: > > > On Sat, 2005-04-30 at 22:24 +0800, Autrijus Tang wrote: > > > > > That would be absolutely horrible. > > You all seem to have some very strong opinions, and I'm unable to have a > discussion around absolutes like "absolutely horrible" and "nope", so > all hypotheticals aside, I'll just concede that this is an uninteresting > way to spend our time.
Sorry. I'll watch my language better in the future, and provide better rationales to support my opinion. :-/ In this case, the reason I called this "absolutely horrible": my Str|Int $x; $x.method(); # calls .method twice Is because to me, it is conceptually no difference to: sub foo (Str|Int $x) { $x.method() }; In both cases, the junctive type is used to construct a new type that is a supertype of both Str and Int, for type checking purposes. If it silently promotes the variable itself to a Junction for autothreading, that will render such type construction unusable, as it will be doing two highly orthogonal things with a single syntax. Again, my apologies for using strong words without adequate justification. Thanks, /Autrijus/
pgprQvCn93uiz.pgp
Description: PGP signature