Re: Anonymous multi-subs

2015-06-24 Thread Jon Lang
On Wednesday, June 24, 2015, yary not@gmail.com wrote:

 Now that I've thought about it for 90 seconds (not fully-formed idea), if
 one were to have an anonymous multi-sub, it ought to be constructed from a
 list of *signature*, *body *pairs.

 And/or, any non-finalized sub could have a method to add another *signature,
 body* to its dispatch list.

 apologies if this discussion is already captured in a design doc, I am
 posting this without having read much of the past.


 Or, in the body, be able to examine the actual signature passed in and
decide what to do based on that,  That [i]could[/i] be done using a
given/when structure, which would be equivalent to a list of signature/body
pairs.


-- 
Jonathan Dataweaver Lang


Re: Anonymous multi-subs

2015-06-24 Thread Brent Laabs
I'll just note that you can fake anon multi subs with lexical subs like
this:

my $sub = do {
proto foo (|) { * }
multi foo (Int $x) { $x + 1 }
multi foo (Str $y) { $y ~ 'a' }

foo;
}

say $sub(hello);

The sub there is still named foo as attested by $sub.name, but isn't
available under that name outside of the do block.


On Wed, Jun 24, 2015 at 2:27 PM, Jon Lang datawea...@gmail.com wrote:



 On Wednesday, June 24, 2015, yary not@gmail.com wrote:

 Now that I've thought about it for 90 seconds (not fully-formed idea), if
 one were to have an anonymous multi-sub, it ought to be constructed from a
 list of *signature*, *body *pairs.

 And/or, any non-finalized sub could have a method to add another *signature,
 body* to its dispatch list.

 apologies if this discussion is already captured in a design doc, I am
 posting this without having read much of the past.


  Or, in the body, be able to examine the actual signature passed in and
 decide what to do based on that,  That [i]could[/i] be done using a
 given/when structure, which would be equivalent to a list of signature/body
 pairs.


 --
 Jonathan Dataweaver Lang



Anonymous multi-subs

2015-06-24 Thread yary
Now that I've thought about it for 90 seconds (not fully-formed idea), if
one were to have an anonymous multi-sub, it ought to be constructed from a
list of *signature*, *body *pairs.

And/or, any non-finalized sub could have a method to add another *signature,
body* to its dispatch list.

apologies if this discussion is already captured in a design doc, I am
posting this without having read much of the past.

and now, back to our regularly scheduled programming.

-y