Ter, 2008-04-29 às 21:03 -0500, John M. Dlugosz escreveu:
> In response to questions on my whitepaper, I made this companion
> to bring people up to speed on the issue.
> <http://www.dlugosz.com/Perl6/web/isa-inheritance.html>

Very interesting reading... :)

It actually made me think that it would be possible to implement it as a

   class A { has $.a };
   class B { has $.b };
   sub foo { A $a } { ... }
       foo(B.new()); # FAIL
       use typematch 'like';
       foo(B.new()); # OK
       use typematch 'does';
       foo(B.new()); # FAIL 

This could be achieved simply by scope-redefining
infix:<~~>(Object,Object) to use another implementation.

(Note that I'm trying at all costs to avoid adding that as a signature
trait, because that would complicate the dispatching ;)


Reply via email to