On Fri, May 02, 2008 at 08:47:28AM -0500, John M. Dlugosz wrote:
> In Perl 6, within a signature
>
>    sub foo (  &f:(Int-->Int) )
>    sub foo (  Continuous &f )
>
> The latter says that &f is of type Continuous, not that the return type is 
> Continuous.  That is what you want, right?  The latter would be
>    sub bar (  &f:(Int -->Continuous) )

Hmm, that's not how I've been thinking of it.  More like arrays and
hashes, where

    sub foo ( Dog @dogpound )

specifies that @dogpound retuns Dogs, even though you have to call it
with a subscript to do so.  I think you'll have to stick with

    sub foo ( &f where Continous )

> A closure parameter block follows the block name.  The normal annotation 
> type before the name works in the usual manner, typing the whole object.  
> It's not like the C++ syntax at all.

If this is a proposal, I don't think it'll fly easily.  Currently

    sub foo ( Feline &f )

is shorthand for

    sub foo ( &f:(-->Feline) )

Larry

Reply via email to