Hi,

Assuming this is allowed, what will the .() calls below return?
Does the result depend on the calling context?

 use junctions;  # still required?

 my @subs = ( sub { return 1 } , 
              sub { return 2 } );

 # call the closures in the junction
 any(@subs).();
 all(@subs).();
 one(@subs).();
 none(@subs).();
 one(any(@subs),sub { ... }).();


I'd guess the rule is "call 'em all and return a similarly
structured junction".  How far off the mark am I?


On Fri, 2005-02-11 at 10:46 +1100, Damian Conway wrote:
> Subject: Re: Fwd: Junctive puzzles.
>
> Junctions have an associated boolean predicate that's preserved across 
> operations on the junction. Junctions also implicitly distribute across 
> operations, and rejunctify the results.


Brad

PS. Pugs 6.2.0 currently gets confused:
pugs: cannot cast from VJunc
any(<SubRoutine(<anon>)>,<SubRoutine(<anon>)>) to AST.VCode

--
  The occurrence of mysteries is alway by word of mouth.   -- Hagakure

Reply via email to