[Perl5-syntax] Method::Signatures, now with types

Buddy Burden barefootcoder at gmail.com
Tue Mar 22 00:31:04 GMT 2011


Michael,

> MS is still missing a bunch of features of MXMS, so it's not drop in
> compatible.

True, but we want it to be _mostly_ drop-in compatibile eventually,
right?  With the obvious exception of a few things we agreed should
not be implemented (e.g. types on invocants and "does coerce"), but
those would not impact the majority of users, I suspect.

> Specifically what's missing...
>
> * where constraints
> * labels
> * "does coerce"
> * placeholders
>
> Where constraints are definitely going in same as MXMS and Perl 6.
> https://github.com/schwern/method-signatures/issues#issue/7
>
> Placeholders and labels have not been discussed.

I definitely plan to add where constraints.  Labels and placeholders I
hadn't considered, because I don't use them personally, but I could
take those on.  Labels seems easy.  Placeholders perhaps a _bit_
trickier, but doable.  Unless you think they shouldn't be added, of
course.

> MS also does a few things which are incompatible with MXMS, such as loading
> methods at compile time.  This may interfere with MXD.  We're planning an
> option to turn that off.
> https://github.com/schwern/method-signatures/issues#issue/8

Can you think of a specific incompatibility that might cause, or were
you just thinking that could cause a problem at some point?  Doing it
at compile-time seems like a clear win to me, but perhaps I'm not
thinking it through completely.

> Finally, MS and MXMS don't seem to play well together in the same file.

Yeah, I definitely think it should be either-or.  Trying to mix them
would engender similar problems to trying to mix Mouse and Moose,
IMHO.


            -- Buddy



More information about the Perl5-syntax mailing list