On Saturday, March 30, 2002, at 08:00 , Nick Ing-Simmons wrote: > Autrijus Tang <[EMAIL PROTECTED]> writes: >> >> And then you'll ahve to disambiguate between that and encoding.pm... >> Why aren't we extending encoding.pm instead? > > That was my thought as well - that there is overlap with Jarkko's > work use encoding.
Well, I can make encoding.pm a part of Encode project upon jhi's approval. I wanted to work on its pod at least. But merging Charset.pm I am not sure if it is a good idea. Let me list up the differences.... = Implementation * encoding.pm By setting ${^ENCODING} global variable (Undocumented in perlvar but $ENV{PERL_ENCODING} is documented) * Charset.pm By applying source filter to the caller = Behaviors * encoding.pm * Source untouched. literals stay as is * No scoping since it does nothing but setting global variable (which is actually a code refto Encode object) * Charset.pm * Source rewritten on-the fly, including literals in "". * Crude scoping via Filter::Simple = Pros & Cons * encoding.pm + Faster. Much faster when the caller source is convoluted. + Safer. No unexpected warning in unexpected line # - No scoping. - no "no encoding;" so far. (Trivial to implement, however) * Charset.pm + More comprehensive. With even literals converted, existing codes have more chances + Supports IO as well. But this is feature is not that hard to integrate to encoding.pm - (Much) Slower. - scoping too crude. Because of source filtering which is more dangerous (I consider Charset.pm not so much more than a technology demonstrator but encoding may (and must) be as robust as Encode and PerlIO), I think Charset.pm should stay different from encoding.pm. At the same time I would like to work on encoding.pm to polish its pod and (perhaps) IO support. So what do you say, jhi? Dan the encoding Man