Re: pure perl Zlib

2004-02-16 Thread unrtst
On Mon, 16 Feb 2004, A. Pagaltzis wrote:

 * Sam Vilain [EMAIL PROTECTED] [2004-02-15 22:44]:
  ...but it doesn't use Zlib!  :)   Compress::Gzip?

 * Nicholas Clark [EMAIL PROTECTED] [2004-02-15 22:53]:
  But it doesn't compress. Compress:Gunzip?
  Uncompress::Gzip (Neither really meant as serious suggestions)
 
  Problem is that it's an emulation of bits of Compress::Zlib's
  interface, so I feel that a clue should be in the name. As
  should the bit that it's pure perl, as otherwise it's like
  huh, why another front end to some C code?

 Then maybe it needs to mention that it's an emulation, but
 besides Compress::Zlib::Emulated anything I come up with needs at
 least three words, and those are still incomplete.

 Maybe Compress::Gunzip::ZlibAPI?


I've used other pure perl modules that implemented some other API, so I
looked up a handful of them, history being the best teacher.

Net::SSH::Perl (pure perl Net::SSH)
Apache::FakeSSI (subclass of Apache::SSI using pure perl instead of Apache
 subrequests to implement server side includes)
DBD::PgPP (pure perl postgresql dbd driver)
DBD::mysqlPP (pure perl mysql dbd driver)
MIME::Base64::Perl (pure perl MIME::Base64)
Crypt::Des_PP (pure perl implementation of Crypt::Des)
Crypt::Blowfish_PP (pure perl implementation of Crypt::Blowfish)
(bunch of other Crypt::*_PP modules)

I don't care much for Apache::FakeSSI name, but I didn't look into what it
does, so it might just be appropriate.
The others either append PP to the name of the module it is
reimplementing, or ::Perl.

I'd like to see it as Compress::Zlib::Perl or Compress::Zlib_PP, as that's
what I've come to expect. Which of those is correct, I don't know.
I personally prefer Compress::Zlib_PP, as it is a completely new name
tree, but that's just me. For example, if either of Compress::Zlib or
Compress::Zlib::Perl had other modules included with them, there is a
slightly higher chance of a name collision (though I doubt Compress::Zlib
would use a ::Perl subdirectory).


I don't think the other suggested names are appropriate, as they all deal
with Gzip and Gunzip, which Archive::Zlib(_PP|::Perl) doesn't appear to
implement. (other names mentioned: Compress::Gunzip::ZlibAPI,
Compress:Gunzip, Uncompress::Gzip, Compress::Gzip)


--
Josh I.






Re: pure perl Zlib

2004-02-16 Thread Tim Bunce
On Sun, Feb 15, 2004 at 09:51:18PM +, Nicholas Clark wrote:
 On Mon, Feb 16, 2004 at 10:43:27AM +1300, Sam Vilain wrote:
  On Mon, 16 Feb 2004 10:19, Nicholas Clark wrote;
  
 Autrijus suggested Compress::Zlib::PurePerl, which I think is
 reasonable.
  
  ...but it doesn't use Zlib!  :)   Compress::Gzip?
 
 But it doesn't compress. Compress:Gunzip?
 Uncompress::Gzip (Neither really meant as serious suggestions)
 
 Problem is that it's an emulation of bits of Compress::Zlib's interface,
 so I feel that a clue should be in the name. As should the bit that it's
 pure perl, as otherwise it's like huh, why another front end to some C
 code?

I agree. Compress::Zlib::PurePerl seems okay, but there's really no need
for the extra level. Compress::ZlibPP would be fine. (It seems that
'PP' is becoming a convention for 'pure perl'.)

Sure, it doesn't compress today, but it might in future. (Meanwhile
it could emulate the whole API and just return errors when interfaces
it doesn't support are called.)

Tim.


Re: pure perl Zlib

2004-02-16 Thread A. Pagaltzis
* Tim Bunce [EMAIL PROTECTED] [2004-02-16 11:53]:
 (Meanwhile it could emulate the whole API and just return
 errors when interfaces it doesn't support are called.)

That's an excellent suggestion and nicely resolves the naming
issue as a side effect. Very nice.

-- 
Regards,
Aristotle
 
If you can't laugh at yourself, you don't take life seriously enough.


pure perl Zlib

2004-02-15 Thread Nicholas Clark
Ton Hospel has written a pure perl implementation of gunzip. (no mean feat)
Autrijus sent to the PAR list and asked if anyone could refactor it to
emulate Compress::Zlib's interface sufficiently to allow Archive::Zip
(and therefore PAR) to work with it (to unpack zip files).
It seems that the only 2 functions from Compress::Zlib's API actually need
implementing - inflateInit and inflate.

I'm partway through this, and I'm wondering what the name should be.

Autrijus suggested Compress::Zlib::PurePerl, which I think is reasonable.

Are there further suggestions?

Nicholas Clark


Re: pure perl Zlib

2004-02-15 Thread Sam Vilain
On Mon, 16 Feb 2004 10:19, Nicholas Clark wrote;

   Autrijus suggested Compress::Zlib::PurePerl, which I think is
   reasonable.

...but it doesn't use Zlib!  :)   Compress::Gzip?
-- 
Sam Vilain, sam /\T vilain |T net, PGP key ID: 0x05B52F13
(include my PGP key ID in personal replies to avoid spam filtering)

If cars had followed the same developmental path as computers, a Rolls
Royce would cost $100, get a million miles per gallon, and explode
once a year, killing everyone inside.



Re: pure perl Zlib

2004-02-15 Thread Nicholas Clark
On Mon, Feb 16, 2004 at 10:43:27AM +1300, Sam Vilain wrote:
 On Mon, 16 Feb 2004 10:19, Nicholas Clark wrote;
 
Autrijus suggested Compress::Zlib::PurePerl, which I think is
reasonable.
 
 ...but it doesn't use Zlib!  :)   Compress::Gzip?

But it doesn't compress. Compress:Gunzip?
Uncompress::Gzip (Neither really meant as serious suggestions)

Problem is that it's an emulation of bits of Compress::Zlib's interface,
so I feel that a clue should be in the name. As should the bit that it's
pure perl, as otherwise it's like huh, why another front end to some C
code?

Nicholas Clark


Re: pure perl Zlib

2004-02-15 Thread A. Pagaltzis
* Sam Vilain [EMAIL PROTECTED] [2004-02-15 22:44]:
 ...but it doesn't use Zlib!  :)   Compress::Gzip?

* Nicholas Clark [EMAIL PROTECTED] [2004-02-15 22:53]:
 But it doesn't compress. Compress:Gunzip?
 Uncompress::Gzip (Neither really meant as serious suggestions)
 
 Problem is that it's an emulation of bits of Compress::Zlib's
 interface, so I feel that a clue should be in the name. As
 should the bit that it's pure perl, as otherwise it's like
 huh, why another front end to some C code?

Then maybe it needs to mention that it's an emulation, but
besides Compress::Zlib::Emulated anything I come up with needs at
least three words, and those are still incomplete.

Maybe Compress::Gunzip::ZlibAPI?

-- 
Regards,
Aristotle
 
If you can't laugh at yourself, you don't take life seriously enough.