Re: Version 0.10 of Math::Prime::FastSieve

[email protected] ("Sisyphus")
Newsgroups perl.inline
Message-ID <09E548E8129F4011A63F333242F5F655@desktop2>
----- Original Message ----- 
From: "David Oswald" <[email protected]>
To: "Dana Jacobsen" <[email protected]>; "Sisyphus" 
<[email protected]>; "inline" <[email protected]>
Sent: Friday, May 25, 2012 6:10 PM
Subject: Version 0.10 of Math::Prime::FastSieve


> I've uploaded a new version of Math::Prime::FastSieve: v0.10.
>
> This version is still based on Inline::CPP.  At some future point I
> may use InlineX::CPP2XS to remove the Inline::CPP dependency, but for
> now I like it how it is.

It's a good demo of an Inline::CPP module as is - I wouldn't change that.
If you want to rebuild it as an InlineX::CPP2XS demo, maybe rename it 
slightly - then we'll have *2* excellent demos :-)

> Here are the most significant changes:
>
> - Implemented an END{ Inline->init(); } block to prevent M54 warnings.
>  (Rob's suggestion).

Doing it in an END{} block probably doesn't achieve much.
It seems that the END{} block has to come after the 'use Inline ....' 
anyway, so you might just as well code it at the end of the perl code and 
not worry about enclosing it in an END{} block. (Putting it in an END{} 
block shouldn't matter, however.)
Originally, I was thinking that if you put it in an END{} block then you 
could put that END{} block anywhere in the code, as the location of the 
END{} block  wouldn't matter. But some later testing revealed that's not so.

See Inline-0.50_02  (which I released, but failed to announce, yesterday).
It also contains a Makefile.PL message for any pre-5.8.1 perls that don't 
have Digest::MD5 installed.

> One other note: Perl SV's support an 'unsigned' data type, and my
> functions mostly work with unsigned longs internally.  They even
> specify unsigned longs as return type in some cases.  However,
> whenever I try to specify unsigned long as a parameter type,
> compilation fails.  I think it may be an Inline::C or Inline::CPP
> issue, either in the grammar parsing or in the typemaps.

The 'unsigned long' might pose a problem on 5.6 (I don't think it was in the 
typemap ... not entirely sure), but shouldn't be a problem on later versions 
of perl.

Cheers,
Rob
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.