On Fri, Apr 29, 2005 at 02:35:26PM -0400, Aaron Sherman wrote: > > Sure, but Parrot is not the compiler, it's just something I need to > > target. Hierarchical signature checking should probably not be done in > > the VM level. > > How do other languages call P6 subroutines and methods? Parrot has a > rather sophisticated signature checking scheme built into it's MMD. > Ignoring it and building your own will cost you heavily in performance. > Using it and name-mangling will cost you in inter-language operation > (Ponie comes to mind), and cost you slightly in performance. > > Do we have enough call for this that it's worth the hit?
Well, complex hierarchical types is mandated by S06 and S09 already:
my sub get_book () of Hash of Array of Recipe {...}
my num @nums = Array of num.new(:shape(3;3;3));
Does Parrot's MMD carry this type information natively? I think the
type information has to be encoded somehow anyway, and Ponie can then
reuse the same name-mangling to call into Perl 6 subroutines.
If you have specific issues w.r.t inter-language operation between
Perl 5 and Perl 6, I'd love to hear about it. I do hope you are not
suggesting that we drop the Perl 6 type system to shoehorn into the
Perl 5's /prototype/ signature semantics, though. :-)
Thanks,
/Autrijus/
pgpwO47fKc5no.pgp
Description: PGP signature
