At 8:56 AM -0600 11/13/07, John E. Malmberg wrote:

>One issue that seems to be showing up is setting an $ENV{FOO} to an empty 
>string is apparently causing problems on VMS, as the resulting logical name is 
>not showing up as containing an empty string, but showing up containing one or 
>more non-printing characters. 

There is no "issue."  Since you can't have a zero-length equivalence
name, a zero-length %ENV value is stored as a NULL.  Whether that
means a zero byte or a zero longword, I can't remember without
looking at the code, but that's an implementation detail that doesn't
really matter from Perl.  Here's how easy it is to see what's
happening:

$ perl -e "$ENV{foo}=q//;"
$ perl -e "print ord($ENV{foo});"
0
$ perl -e "print length($ENV{foo});"
0

The value of the environment variable has zero length and a false
truth value -- I don't know what more you can ask of it.  Perhaps we
could better document these internals, but the implementation has
been stable for a long time and I don't see any reason to raise a red
flag about it in the final days of a release cycle.

-- 
________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Reply via email to