Jarkko Hietaniemi <[EMAIL PROTECTED]> writes:

> > > Larry mumbled something like "implements" and "interface". So to say
> > > 
> > >     package Net::FTP::Foo implements Net::FTP;
> > > 
> > > But I don't think, anybody wrote an RFC about the plan.
> > 
> > I did. Or something like it. And I've got a couple of modules on CPAN
> > (that I really must document better) that kind of work already:
> > 
> >     package ShoppingBasket;
> >     
> >     use ex::interface qw/add_entry total_price delete_entry .../
> 
> Interfaces are tricky.  One must assume a common agreed-upon
> vocabulary or ontology.  What does 'add_entry' mean, really and
> exactly?  What arguments does it take?  What arguments could it take?
> What does it return?  Does it have non-local effects?

Indeed. But Perl (at present) doesn't allow us to specify that kind of
thing at the language level. The job of specifying said stuff is left
to the documentation of the interface. More enforceable detail would
be nice, but Perl's OO dispatch doesn't work like that.

-- 
Piers

Reply via email to