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

Re: [MacPerl] use - case sensitive?



At 08.38 -0500 1998.06.18, Kevin van Haaren wrote:
>I recently moved my first set of modules from my MacPerl (System 8.1,
>MacPerl 5.1.9r4) test bed to my ISP (using sun solaris, perl 5.004_04).  I
>found an error in my script that only showed up on the unix box:
>
>use Web::Framework;
>
>worked fine under MacPerl but failed under Unix perl.  The reason it failed
>on Unix is that the filename for the module was FrameWork.pm.  Should this
>have failed under MacPerl too? Or is it an OS specific "feature" I need to
>watch out for?

To add to what Matthias said: C<use> is only HALF case-insensitive in
MacPerl.  It is neither a bug nor a feature, IMO, it kinda just _is_.

Consider the following module:

  package Foo;
  use Exporter;
  @ISA = qw(Exporter);
  @EXPORT = qw($x);
  $x = 'JAMPH';
  print 1;

Now, a script:

  use Foo;
  print $x;

This will print "1JAMPH".  But this script will print only "1":

  use foo;
  print $x;

This is simply because your use statement does not match the package name
in the file that was use'd.  The symbols in Foo are not imported, because
you are calling for the symbols in package foo.

--
Chris Nandor          mailto:pudge@pobox.com         http://pudge.net/
%PGPKey = ('B76E72AD', [1024, '0824090B CE73CA10  1FF77F13 8180B6B6'])



***** Want to unsubscribe from this list?
***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch