[Catalyst] what is the type of $context?

A. Pagaltzis pagaltzis at gmx.de
Sat Jun 10 07:16:22 CEST 2006


* Nilson Santos Figueiredo Junior <acid06 at gmail.com> [2006-06-10 06:30]:
> Well, there's nothing stopping you from implementing this in
> Perl 5.

Sure, and then it will be used by you and two others and 98% of
the Perl code out there will remain unintrospectible by your pet
interface.

> What Perl 6 provides is just a default way of doing it. But
> Perl 5 is perfectly capable of doing it.

Exactly, and that makes All. The. Difference.

> If you adhere to a convention of specifying introspection
> meta-data you won't have to rely on guesses and heuristics (in
> whatever form that meta-data is available), this is true for
> any programming language.

Sure, and it also doesn’t buy you anything, because your solution
won’t be able to cope with most code.

> Perl 6 has a lot of nice features. But, IMO, a default
> instrospection API is not a significant one.

I think it’s quite significant. It’s not as important as other
things, but it opens the door to a class of things that are not
generically doable in Perl 5, so I’d say it’s pretty big in its
own right, even if it’s not the foremost reason to adopt Perl 6.

> explicit call semantics are […] nice not because they provide
> better introspection for the user, but because they might
> increase perl's ability to do compile-time validation, for
> example.

They are a nice feature for both reasons. This isn’t an either-or
matter. That they have additional (and arguably more important)
effects than introspection annotation ensures that people will
use them even without having introspection in mind, which makes
them yet more valuable for introspection. A nice synergy.

----

In any case, I stand by my assertion that introspection in Perl 5
is possible, but fraught with problems.

That Perl 6 will fix most of that is just a side note I threw in,
and I stand by that too. That this is the biggest reason to adopt
Perl 6 is something I never said, and if you had the impression
that I did, then it’s because you read into my arguments
something that wasn’t there.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



More information about the Catalyst mailing list