[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [MacPerl-Porters] New MacPerl build system now available!



At 14.03 -0400 2000.04.29, Larry Moore wrote:
>can't be found.  What are 'OS error -43' and 'Error 32'?

Mac OS errors are listed in Inside Mac.  Here is a neat trick for getting
the error text:

   print $^E = -43;

$^E (and $!) is special in that in numeric context it returns one thing, in
string context (such as what print does to it) it returns something else.
So you assign the number to $^E, and then when it is printed it returns not
-43, but the error message:

   File not found (OS error -43)

For the sake of completeness, this:

   print 0+($^E = -43);

prints "-43", since it remains in numeric context.  This prints the error
message:

   print ''.($^E = -43);

because it concatenates, which is a string operation, and this prints the
number:

   print ''.(0+($^E = -43));

because it first does a number operation, and then does a string operation
on the resulting number.

-- 
Chris Nandor       |     pudge@pobox.com      |     http://pudge.net/
Andover.Net        | chris.nandor@andover.net | http://slashcode.com/

==== Want to unsubscribe from this list?
==== Send mail with body "unsubscribe" to macperl-porters-request@macperl.org