in reply to Re: [perl6] More Inline::Perl5 musings
in thread [perl6] More Inline::Perl5 musings
Thanks Corion, Tux, duelafn.
Not much to add except that the level of support for perl5 extensions seems pretty good.
In general, I haven't yet found a way to access overloaded operators directly.
Instead I'm calling the overloading subroutines by name - eg:
That's no big deal, but it still puzzles me that say "# $f3"; apparently manages to access the Math::Float128 overloading of "" without any need for me to call Math::Float128::_overload_string() by name.
Yet for all other overloaded operators I'm having to call the relevant subroutine.
The penny will drop when it's ready to fall ;-)
I'm also wondering whether Inline::Perl5 will work on MS Windows. Any experience of that here ?
I think it should be ok:
At some stage I'll grab a Windows version of perl6 ... and find out ...
Cheers,
Rob
Not much to add except that the level of support for perl5 extensions seems pretty good.
In general, I haven't yet found a way to access overloaded operators directly.
Instead I'm calling the overloading subroutines by name - eg:
I was hoping to be able to do something like:use Inline::Perl5; my $p5 = Inline::Perl5.new; $p5.use('Math::Float128'); my $f1 = $p5.invoke('Math::Float128', 'new', '2.5'); my $f2 = $p5.invoke('Math::Float128', 'new', '3.0'); my $swap = 0; # Set to true if order of # operands is to be swapped # Set $f3 to $f1 divided by $f2 my $f3 = $f1._overload_div($f2, $swap); say "# $f3"; # Outputs, as expected: # 8.33333333333333333333333333333333365e-01
but that doesn't work, so I have to resort to calling Math::Float128::_overload_div() by name.my $f3 = $f1 / $f2;
That's no big deal, but it still puzzles me that say "# $f3"; apparently manages to access the Math::Float128 overloading of "" without any need for me to call Math::Float128::_overload_string() by name.
Yet for all other overloaded operators I'm having to call the relevant subroutine.
The penny will drop when it's ready to fall ;-)
I'm also wondering whether Inline::Perl5 will work on MS Windows. Any experience of that here ?
I think it should be ok:
C:\>perl -V:useshrplib useshrplib='true';
At some stage I'll grab a Windows version of perl6 ... and find out ...
Cheers,
Rob
|
---|
In Section
Seekers of Perl Wisdom