develooper Front page | perl.perl5.porters | Postings from November 2011

Re: RFC: Autoloading charnames

Thread Previous | Thread Next
Karl Williamson
November 29, 2011 17:03
Re: RFC: Autoloading charnames
Message ID:
On 11/29/2011 05:59 PM, Karl Williamson wrote:
> On 11/26/2011 09:00 AM, Ricardo Signes wrote:
>> * David Golden<> [2011-11-22T18:51:35]
>>> Put differently, we should *NOT* do either of these:
>>> (a) *say* we autoload charnames on \N{} and then *not* have
>>> charnames::viacode() be a valid function call after \N{}
>>> (b) *don't say* anything about charnames, but have
>>> charnames::viacode() be valid after \N{}
>> This summarized my feelings very well, too.
>> I would prefer if \N{} did not cause charnames::viacode (etc) to just
>> start
>> working. That is a pretty weak preference, but I prefer that functions
>> like
>> that have their module loaded explicitly. \N{}, on the other hand, is (or
>> ought to be) a much more basic language feature that should always work.
>> This would require work to provide a way to only load charnames, and not
>> everything else. I know that work might not get done right now, and I
>> think
>> it's more useful to have \N{} Just Work than delay for this small point.
>> My likely order of preference, best first:
>> 1. using \N{} automatically loads the data needed to make it work, but
>> no other functions magically become available
>> 2. using \N{} loads charnames normally, with documentation saying
>> something
>> like "at present, using \N{} will load the charnames package, but this
>> is an implementation detail subject to change; if you're using functions
>> from it, C<use charnames>"
>> 3. using \N{} loads charnames normally, and we 'fess up to it
> Sunder scenario #1, what should happen after someone does 'no
> charnames'; should it just unload the functions, or also \N{}?


And, you can't unload the functions

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