develooper Front page | perl.perl6.language | Postings from May 2005

Re: Syntax of using Perl5 modules?

Thread Previous | Thread Next
Rod Adams
May 25, 2005 10:11
Re: Syntax of using Perl5 modules?
Message ID:
Autrijus Tang wrote:

>So, this now works in Pugs with (with a "env PUGS_EMBED=perl5" build):
>    use Digest--perl5;
>    my $cxt = Digest.SHA1;
>    $cxt.add('Pugs!');
>    # This prints: 66db83c4c3953949a30563141f08a848c4202f7f
>    say $cxt.hexdigest;
>This includes the "" from Perl 5., etc will
>also work.
>Now my question is, is my choice of using the "perl5" namespace indicator a 
>sane way to handle this?  Is it okay for Perl 6 to fallback to using Perl 5
>automatically?  Or should I use something else than "use" entirely?
Personally, I question the need for any flag saying it's perl5, and 
actually would prefer there be no such thing.

Consider S01: "Migration is important. The perl interpreter will assume 
that it is being fed Perl 5 code unless the code starts with a "class" 
or "module" keyword, or you specifically tell it you're running Perl 6 
code in some other way,", which sounds to me like a "yes" to your 
fallback question.

On the migration front, when someone ports to Perl6, I get a 
"free" upgrade, assuming the module author was kind enough to up the 
version number.

Glancing at S11, I see where you're coming from. There is some logic in 
giving all the p5 modules an author of "perl5", since they will not have 
one on their own. However, I think the calling syntax would have to be 
"use Digest-(Any)-perl5;" to force the usage of a perl5 version.

-- Rod Adams

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About