[23989] in Perl-Users-Digest
Perl-Users Digest, Issue: 6190 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Feb 27 18:06:38 2004
Date: Fri, 27 Feb 2004 15:05:05 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Fri, 27 Feb 2004 Volume: 10 Number: 6190
Today's topics:
Re: Comments requested: brief summary of Perl (Adam Barr)
gd 1.41 install errors in red hat 9 <copia@pacifier.com>
help with Perl Mechanize (bernice tsai)
Re: How to reassign DB::OUT? <jill_krugman@yahoo.com>
Re: How to reassign DB::OUT? <nospam-abuse@ilyaz.org>
Re: How to reassign DB::OUT? <jill_krugman@yahoo.com>
Re: RegExp Replace Using a Variable <dwall@fastmail.fm>
Re: site launch <matthew.garrish@sympatico.ca>
Re: Thanks for the advice <tadmc@augustmail.com>
traversing array slices (TonyShirt)
Re: Win32::OLE - how to effectively create large spread <brian_helterline@hp.com>
Re: Win32::OLE - how to effectively create large spread (Jay Tilton)
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: 27 Feb 2004 13:33:17 -0800
From: adamba@gte.net (Adam Barr)
Subject: Re: Comments requested: brief summary of Perl
Message-Id: <ce782195.0402271333.3a42f2be@posting.google.com>
Michele Dondi <bik.mido@tiscalinet.it> wrote in message news:<hrku309rcm7tpclj9dqh58evd5oq565c4k@4ax.com>...
> On 23 Feb 2004 22:33:37 -0800, adamba@gte.net (Adam Barr) wrote:
>
> >The file is at
> >
> >http://www.proudlyserving.com/language/perl.pdf
>
> Some more cmts...
>
> [about REs]
> | () can be used to group parts of a regular expression
> ^^^
>
> But does a lot more than that, with side-effects. For simple grouping
> you can use (?: ... ) instead.
>
> | if ($phone =~ /\d{3}\-\d{4}/) {
>
> if ($phone =~ /\d{3}-\d{4}/) {
>
> | The return statement is actually optional; if it is missing, then the subroutine will return the
> | value of the last expression calculated, or undef if no expressions were calculated.
>
> But it becomes necessary if one wants to exit early from a sub, as is
> often the case e.g. with recursive ones...
>
> | Variables local to a function can be declared with the my operator, so the previous function
> | could be written:
>
> Variables local to "anything"! As you should have clearly stated much
> above...
>
> | accesses the global variable by name. And, for reasons which are best left to Perl wizards to
> | explain, you can't use my on a file handle, you have to use local.
>
> But with recent enough perls it is much better and highly recommended
> to use lexical filehandles (unless backwards compatibility is an
> issue), as you may explain in the section about open():
>
> my $all = do {
> open my $fh, '<', $file or die $!;
> local $/;
> <$fh> };
>
>
> Hmmm, seems like eventually I finished it! These are more or less the
> cmts and suggestion I felt like giving about your work. Other posters
> (Hey, Ben!!) may correct me if, as is unfortunately usual, further
> imprecisions have inadvertently slipped in...
>
>
> Michele
Michele, thanks for all the great comments. I don't have time right
now to follow up on them, I will later, but I wanted to acknowledge
them now.
- adam
------------------------------
Date: Fri, 27 Feb 2004 13:27:08 -0800
From: "Stephen Strong" <copia@pacifier.com>
Subject: gd 1.41 install errors in red hat 9
Message-Id: <tCO%b.1213$xI4.50142@news.uswest.net>
how do i get this module installed here is the error i get when trying to
make:
gcc -c -I/usr/local/include -I/usr/local/include/gd -D_REENTRANT -D_GNU_SOU
RCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -I/usr/local/includ
e -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pip
e -march=i386 -mcpu=i686 -DVERSION=\"1.41\" -DXS_VERSION=\"1.41\" -fPIC
"-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE" -DHAVE_JPEG -DHAVE_TT
F -DHAVE_XPM GD.c
GD.xs:7:16: gd.h: No such file or directory
GD.xs:236: parse error before "GD__Image"
GD.xs:236: warning: data definition has no type or storage class
GD.xs:237: parse error before "GD__Font"
GD.xs:237: warning: data definition has no type or storage class
GD.xs:239: parse error before "gdFontGiant"
GD.xs:239: warning: data definition has no type or storage class
GD.xs:240: parse error before "gdFontLarge"
GD.xs:240: warning: data definition has no type or storage class
GD.xs:241: parse error before "gdFontSmall"
GD.xs:241: warning: data definition has no type or storage class
GD.xs:242: parse error before "gdFontMediumBold"
GD.xs:242: warning: data definition has no type or storage class
GD.xs:243: parse error before "gdFontTiny"
GD.xs:243: warning: data definition has no type or storage class
GD.xs:281: parse error before "gdIOCtx"
GD.xs:281: warning: no semicolon at end of struct or union
GD.xs:285: parse error before '}' token
GD.xs:285: warning: data definition has no type or storage class
GD.xs:289: parse error before "ctx"
GD.xs: In function `bufGetC':
GD.xs:290: `ctx' undeclared (first use in this function)
GD.xs:290: (Each undeclared identifier is reported only once
GD.xs:290: for each function it appears in.)
GD.xs:292: dereferencing pointer to incomplete type
GD.xs:292: dereferencing pointer to incomplete type
GD.xs:293: dereferencing pointer to incomplete type
GD.xs:293: dereferencing pointer to incomplete type
GD.xs: At top level:
GD.xs:296: parse error before "ctx"
GD.xs: In function `bufGetBuf':
GD.xs:297: `ctx' undeclared (first use in this function)
GD.xs:300: dereferencing pointer to incomplete type
GD.xs:300: dereferencing pointer to incomplete type
GD.xs:301: `len' undeclared (first use in this function)
GD.xs:307: `buf' undeclared (first use in this function)
GD.xs:307: dereferencing pointer to incomplete type
GD.xs:307: dereferencing pointer to incomplete type
GD.xs:308: dereferencing pointer to incomplete type
GD.xs: At top level:
GD.xs:312: parse error before "ctx"
GD.xs: In function `bufSeek':
GD.xs:313: `ctx' undeclared (first use in this function)
GD.xs:314: dereferencing pointer to incomplete type
GD.xs:315: dereferencing pointer to incomplete type
GD.xs:315: dereferencing pointer to incomplete type
GD.xs:316: dereferencing pointer to incomplete type
GD.xs:316: dereferencing pointer to incomplete type
GD.xs: At top level:
GD.xs:320: parse error before "ctx"
GD.xs: In function `bufTell':
GD.xs:321: `ctx' undeclared (first use in this function)
GD.xs:322: dereferencing pointer to incomplete type
GD.xs: At top level:
GD.xs:325: parse error before "ctx"
GD.xs: In function `bufFree':
GD.xs:326: `ctx' undeclared (first use in this function)
GD.xs: At top level:
GD.xs:329: parse error before '*' token
GD.xs: In function `newDynamicCtx':
GD.xs:332: parse error before ')' token
GD.xs:332: parse error before ')' token
GD.xs:332: `__s' undeclared (first use in this function)
GD.xs: At top level:
GD.xs:332: parse error before ')' token
GD.xs:332: `__s' undeclared here (not in a function)
GD.xs:332: parse error before "switch"
GD.xs:332: conflicting types for `__u'
GD.xs:332: previous declaration of `__u'
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before '->' token
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: redefinition of `__u'
GD.xs:332: `__u' previously defined here
GD.xs:332: warning: initialization makes integer from pointer without a cast
GD.xs:332: initializer element is not constant
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before "case"
GD.xs:332: `__s' used prior to declaration
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before '}' token
GD.xs:332: parse error before '\x0'
GD.xs:332: warning: data definition has no type or storage class
GD.xs:332: parse error before '}' token
GD.c: In function `XS_GD__Image__new':
GD.c:386: parse error before "RETVAL"
GD.xs:365: `gdImagePtr' undeclared (first use in this function)
GD.xs:365: parse error before "theImage"
GD.xs:366: `theImage' undeclared (first use in this function)
GD.xs:367: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image__newFromPng':
GD.c:427: parse error before "RETVAL"
GD.xs:378: `RETVAL' undeclared (first use in this function)
GD.xs:378: parse error before "gdImageCreateFromPng"
GD.xs: In function `XS_GD__Image_newFromPngData':
GD.xs:388: `gdIOCtx' undeclared (first use in this function)
GD.xs:388: `ctx' undeclared (first use in this function)
GD.c:457: parse error before "RETVAL"
GD.xs:394: `RETVAL' undeclared (first use in this function)
GD.xs:394: parse error before "gdImageCreateFromPngCtx"
GD.xs: In function `XS_GD__Image_newFromGdData':
GD.xs:405: `gdIOCtx' undeclared (first use in this function)
GD.xs:405: `ctx' undeclared (first use in this function)
GD.c:490: parse error before "RETVAL"
GD.xs:411: `RETVAL' undeclared (first use in this function)
GD.xs:411: parse error before "gdImageCreateFromGdCtx"
GD.xs: In function `XS_GD__Image_newFromGd2Data':
GD.xs:422: `gdIOCtx' undeclared (first use in this function)
GD.xs:422: `ctx' undeclared (first use in this function)
GD.c:523: parse error before "RETVAL"
GD.xs:428: `RETVAL' undeclared (first use in this function)
GD.xs:428: parse error before "gdImageCreateFromGd2Ctx"
GD.xs: In function `XS_GD__Image_newFromGifData':
GD.xs:439: `gdIOCtx' undeclared (first use in this function)
GD.xs:439: `ctx' undeclared (first use in this function)
GD.c:557: parse error before "RETVAL"
GD.c:577: `RETVAL' undeclared (first use in this function)
GD.xs: In function `XS_GD__Image_newFromJpegData':
GD.xs:463: `gdIOCtx' undeclared (first use in this function)
GD.xs:463: `ctx' undeclared (first use in this function)
GD.c:597: parse error before "RETVAL"
GD.xs:471: `RETVAL' undeclared (first use in this function)
GD.xs:471: parse error before "gdImageCreateFromJpegCtx"
GD.xs: In function `XS_GD__Image_newFromWBMPData':
GD.xs:487: `gdIOCtx' undeclared (first use in this function)
GD.xs:487: `ctx' undeclared (first use in this function)
GD.c:636: parse error before "RETVAL"
GD.xs:493: `RETVAL' undeclared (first use in this function)
GD.xs:493: parse error before "gdImageCreateFromWBMPCtx"
GD.c: In function `XS_GD__Image__newFromGif':
GD.c:667: parse error before "RETVAL"
GD.c:684: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image__newFromXbm':
GD.c:698: parse error before "RETVAL"
GD.xs:522: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image__newFromGd':
GD.c:723: parse error before "RETVAL"
GD.xs:532: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image__newFromGd2':
GD.c:748: parse error before "RETVAL"
GD.xs:542: `RETVAL' undeclared (first use in this function)
GD.xs: In function `XS_GD__Image__newFromJpeg':
GD.xs:552: `gdImagePtr' undeclared (first use in this function)
GD.xs:552: parse error before "img"
GD.c:777: parse error before "RETVAL"
GD.xs:556: `img' undeclared (first use in this function)
GD.xs:563: `RETVAL' undeclared (first use in this function)
GD.xs: In function `XS_GD__Image__newFromWBMP':
GD.xs:578: `gdImagePtr' undeclared (first use in this function)
GD.xs:578: parse error before "img"
GD.c:819: parse error before "RETVAL"
GD.xs:581: `img' undeclared (first use in this function)
GD.xs:588: `RETVAL' undeclared (first use in this function)
GD.xs: In function `XS_GD__Image_newFromXpm':
GD.xs:598: `gdImagePtr' undeclared (first use in this function)
GD.xs:598: parse error before "img"
GD.c:855: parse error before "RETVAL"
GD.xs:602: `img' undeclared (first use in this function)
GD.xs:609: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image__newFromGd2Part':
GD.c:897: parse error before "RETVAL"
GD.xs:628: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Image_DESTROY':
GD.c:920: parse error before "image"
GD.c:924: `image' undeclared (first use in this function)
GD.c:924: called object is not a function
GD.c: In function `XS_GD__Image_png':
GD.c:944: parse error before "image"
GD.c:949: `image' undeclared (first use in this function)
GD.c:949: called object is not a function
GD.c: In function `XS_GD__Image_gif':
GD.c:975: parse error before "image"
GD.c:983: `image' undeclared (first use in this function)
GD.c:983: called object is not a function
GD.c: In function `XS_GD__Image_jpeg':
GD.c:1015: parse error before "image"
GD.c:1024: `image' undeclared (first use in this function)
GD.c:1024: called object is not a function
GD.c: In function `XS_GD__Image_wbmp':
GD.c:1068: parse error before "image"
GD.c:1077: `image' undeclared (first use in this function)
GD.c:1077: called object is not a function
GD.c: In function `XS_GD__Image_gd':
GD.c:1109: parse error before "image"
GD.c:1114: `image' undeclared (first use in this function)
GD.c:1114: called object is not a function
GD.xs:741: warning: assignment makes pointer from integer without a cast
GD.c: In function `XS_GD__Image_gd2':
GD.c:1140: parse error before "image"
GD.c:1145: `image' undeclared (first use in this function)
GD.c:1145: called object is not a function
GD.xs:756: `GD2_FMT_COMPRESSED' undeclared (first use in this function)
GD.xs:756: warning: assignment makes pointer from integer without a cast
GD.c: In function `XS_GD__Image_transparent':
GD.c:1171: parse error before "image"
GD.c:1177: `image' undeclared (first use in this function)
GD.c:1177: called object is not a function
GD.c: In function `XS_GD__Image_getBounds':
GD.c:1204: parse error before "image"
GD.c:1208: `image' undeclared (first use in this function)
GD.c:1208: called object is not a function
GD.c: In function `XS_GD__Image_rgb':
GD.c:1235: parse error before "image"
GD.c:1240: `image' undeclared (first use in this function)
GD.c:1240: called object is not a function
GD.c: In function `XS_GD__Image_boundsSafe':
GD.c:1268: parse error before "image"
GD.c:1276: `image' undeclared (first use in this function)
GD.c:1276: called object is not a function
GD.c: In function `XS_GD__Image_getPixel':
GD.c:1297: parse error before "image"
GD.c:1305: `image' undeclared (first use in this function)
GD.c:1305: called object is not a function
GD.c: In function `XS_GD__Image_setPixel':
GD.c:1326: parse error before "image"
GD.c:1333: `image' undeclared (first use in this function)
GD.c:1333: called object is not a function
GD.c: In function `XS_GD__Image_line':
GD.c:1353: parse error before "image"
GD.c:1362: `image' undeclared (first use in this function)
GD.c:1362: called object is not a function
GD.c: In function `XS_GD__Image_dashedLine':
GD.c:1382: parse error before "image"
GD.c:1391: `image' undeclared (first use in this function)
GD.c:1391: called object is not a function
GD.c: In function `XS_GD__Image_openPolygon':
GD.c:1411: parse error before "image"
GD.c:1417: `image' undeclared (first use in this function)
GD.c:1417: called object is not a function
GD.xs:887: `gdPointPtr' undeclared (first use in this function)
GD.xs:887: parse error before "polyptr"
GD.xs:903: `polyptr' undeclared (first use in this function)
GD.xs:903: parse error before "Perl_safesysmalloc"
GD.c: In function `XS_GD__Image_filledPolygon':
GD.c:1482: parse error before "image"
GD.c:1488: `image' undeclared (first use in this function)
GD.c:1488: called object is not a function
GD.xs:943: `gdPointPtr' undeclared (first use in this function)
GD.xs:943: parse error before "polyptr"
GD.xs:959: `polyptr' undeclared (first use in this function)
GD.xs:959: parse error before "Perl_safesysmalloc"
GD.c: In function `XS_GD__Image_rectangle':
GD.c:1553: parse error before "image"
GD.c:1562: `image' undeclared (first use in this function)
GD.c:1562: called object is not a function
GD.c: In function `XS_GD__Image_filledRectangle':
GD.c:1582: parse error before "image"
GD.c:1591: `image' undeclared (first use in this function)
GD.c:1591: called object is not a function
GD.c: In function `XS_GD__Image_arc':
GD.c:1611: parse error before "image"
GD.c:1622: `image' undeclared (first use in this function)
GD.c:1622: called object is not a function
GD.c: In function `XS_GD__Image_fillToBorder':
GD.c:1642: parse error before "image"
GD.c:1650: `image' undeclared (first use in this function)
GD.c:1650: called object is not a function
GD.c: In function `XS_GD__Image_fill':
GD.c:1670: parse error before "image"
GD.c:1677: `image' undeclared (first use in this function)
GD.c:1677: called object is not a function
GD.c: In function `XS_GD__Image_setBrush':
GD.c:1697: parse error before "image"
GD.c:1702: `image' undeclared (first use in this function)
GD.c:1702: called object is not a function
GD.c:1709: `brush' undeclared (first use in this function)
GD.c:1709: called object is not a function
GD.c: In function `XS_GD__Image_setTile':
GD.c:1729: parse error before "image"
GD.c:1734: `image' undeclared (first use in this function)
GD.c:1734: called object is not a function
GD.c:1741: `tile' undeclared (first use in this function)
GD.c:1741: called object is not a function
GD.c: In function `XS_GD__Image_setStyle':
GD.c:1761: parse error before "image"
GD.c:1765: `image' undeclared (first use in this function)
GD.c:1765: called object is not a function
GD.c: In function `XS_GD__Image_colorAllocate':
GD.c:1797: parse error before "image"
GD.c:1806: `image' undeclared (first use in this function)
GD.c:1806: called object is not a function
GD.c: In function `XS_GD__Image_colorClosest':
GD.c:1827: parse error before "image"
GD.c:1836: `image' undeclared (first use in this function)
GD.c:1836: called object is not a function
GD.c: In function `XS_GD__Image_colorClosestHWB':
GD.c:1857: parse error before "image"
GD.c:1866: `image' undeclared (first use in this function)
GD.c:1866: called object is not a function
GD.c: In function `XS_GD__Image_colorExact':
GD.c:1887: parse error before "image"
GD.c:1896: `image' undeclared (first use in this function)
GD.c:1896: called object is not a function
GD.c: In function `XS_GD__Image_colorResolve':
GD.c:1917: parse error before "image"
GD.c:1926: `image' undeclared (first use in this function)
GD.c:1926: called object is not a function
GD.c: In function `XS_GD__Image_colorsTotal':
GD.c:1947: parse error before "image"
GD.c:1953: `image' undeclared (first use in this function)
GD.c:1953: called object is not a function
GD.c: In function `XS_GD__Image_interlaced':
GD.c:1974: parse error before "image"
GD.c:1980: `image' undeclared (first use in this function)
GD.c:1980: called object is not a function
GD.c: In function `XS_GD__Image_compare':
GD.c:2007: parse error before "image1"
GD.c:2014: `image1' undeclared (first use in this function)
GD.c:2014: called object is not a function
GD.c:2021: `image2' undeclared (first use in this function)
GD.c:2021: called object is not a function
GD.c: In function `XS_GD__Image_colorDeallocate':
GD.c:2042: parse error before "image"
GD.c:2047: `image' undeclared (first use in this function)
GD.c:2047: called object is not a function
GD.c: In function `XS_GD__Image_copy':
GD.c:2067: parse error before "destination"
GD.c:2078: `destination' undeclared (first use in this function)
GD.c:2078: called object is not a function
GD.c:2085: `source' undeclared (first use in this function)
GD.c:2085: called object is not a function
GD.c: In function `XS_GD__Image_copyResized':
GD.c:2105: parse error before "destination"
GD.c:2118: `destination' undeclared (first use in this function)
GD.c:2118: called object is not a function
GD.c:2125: `source' undeclared (first use in this function)
GD.c:2125: called object is not a function
GD.c: In function `XS_GD__Image_copyMerge':
GD.c:2145: parse error before "destination"
GD.c:2157: `destination' undeclared (first use in this function)
GD.c:2157: called object is not a function
GD.c:2164: `source' undeclared (first use in this function)
GD.c:2164: called object is not a function
GD.c: In function `XS_GD__Image_copyMergeGray':
GD.c:2184: parse error before "destination"
GD.c:2196: `destination' undeclared (first use in this function)
GD.c:2196: called object is not a function
GD.c:2203: `source' undeclared (first use in this function)
GD.c:2203: called object is not a function
GD.c: In function `XS_GD__Image_paletteCopy':
GD.c:2223: parse error before "destination"
GD.c:2228: `destination' undeclared (first use in this function)
GD.c:2228: called object is not a function
GD.c:2235: `source' undeclared (first use in this function)
GD.c:2235: called object is not a function
GD.c: In function `XS_GD__Image_char':
GD.c:2255: parse error before "image"
GD.c:2264: `image' undeclared (first use in this function)
GD.c:2264: called object is not a function
GD.c:2271: `font' undeclared (first use in this function)
GD.c:2271: called object is not a function
GD.c: In function `XS_GD__Image_charUp':
GD.c:2291: parse error before "image"
GD.c:2300: `image' undeclared (first use in this function)
GD.c:2300: called object is not a function
GD.c:2307: `font' undeclared (first use in this function)
GD.c:2307: called object is not a function
GD.c: In function `XS_GD__Image_string':
GD.c:2327: parse error before "image"
GD.c:2336: `image' undeclared (first use in this function)
GD.c:2336: called object is not a function
GD.c:2343: `font' undeclared (first use in this function)
GD.c:2343: called object is not a function
GD.c: In function `XS_GD__Image_stringUp':
GD.c:2363: parse error before "image"
GD.c:2372: `image' undeclared (first use in this function)
GD.c:2372: called object is not a function
GD.c:2379: `font' undeclared (first use in this function)
GD.c:2379: called object is not a function
GD.xs: In function `XS_GD__Image_stringFT':
GD.xs:1365: `gdImagePtr' undeclared (first use in this function)
GD.xs:1365: parse error before "img"
GD.xs:1374: `img' undeclared (first use in this function)
GD.xs:1374: parse error before "tmp"
GD.xs:1379: warning: assignment makes pointer from integer without a cast
GD.c: In function `XS_GD__Font_Small':
GD.c:2452: parse error before "RETVAL"
GD.xs:1402: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Font_Large':
GD.c:2478: parse error before "RETVAL"
GD.xs:1413: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Font_Giant':
GD.c:2504: parse error before "RETVAL"
GD.xs:1424: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Font_MediumBold':
GD.c:2530: parse error before "RETVAL"
GD.xs:1435: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Font_Tiny':
GD.c:2556: parse error before "RETVAL"
GD.xs:1446: `RETVAL' undeclared (first use in this function)
GD.c: In function `XS_GD__Font_nchars':
GD.c:2581: parse error before "font"
GD.c:2587: `font' undeclared (first use in this function)
GD.c:2587: called object is not a function
GD.c: In function `XS_GD__Font_offset':
GD.c:2608: parse error before "font"
GD.c:2614: `font' undeclared (first use in this function)
GD.c:2614: called object is not a function
GD.c: In function `XS_GD__Font_width':
GD.c:2635: parse error before "font"
GD.c:2641: `font' undeclared (first use in this function)
GD.c:2641: called object is not a function
GD.c: In function `XS_GD__Font_height':
GD.c:2662: parse error before "font"
GD.c:2668: `font' undeclared (first use in this function)
GD.c:2668: called object is not a function
{standard input}: Assembler messages:
{standard input}:460: Error: symbol `__u' is already defined
{standard input}:466: Error: symbol `__u' is already defined
{standard input}:472: Error: symbol `__u' is already defined
{standard input}:478: Error: symbol `__u' is already defined
{standard input}:484: Error: symbol `__u' is already defined
{standard input}:490: Error: symbol `__u' is already defined
{standard input}:496: Error: symbol `__u' is already defined
{standard input}:502: Error: symbol `__u' is already defined
{standard input}:508: Error: symbol `__u' is already defined
{standard input}:514: Error: symbol `__u' is already defined
{standard input}:520: Error: symbol `__u' is already defined
make: *** [GD.o] Error 1
help!!!!
------------------------------
Date: 27 Feb 2004 12:38:01 -0800
From: whorl1quote-other@yahoo.com (bernice tsai)
Subject: help with Perl Mechanize
Message-Id: <6f35fd39.0402271238.4f206f5a@posting.google.com>
Would anyone help me with this little script that I tried to get some
contents from Yahoo Personals by using Perl Mechanize. It doesn't
return any results, although I've feed all kinds of browser headers.
Do I miss anything? Any comment is highly appreciated!!
------------------------------------
#!/usr/bin/perl -w
use WWW::Mechanize;
use strict;
my $mech=WWW::Mechanize->new();
$mech->add_header(HTTP_ACCEPT => 'image/gif', */*');
$mech->add_header(HTTP_ACCEPT_ENCODING => 'gzip, deflate');
$mech->add_header(HTTP_ACCEPT_LANGUAGE => 'en-us');
$mech->add_header(HTTP_CONNECTION => 'Keep-Alive');
$mech->add_header(HTTP_USER_AGENT => 'Mozilla/4.0 (compatible; MSIE
6.0; Windows NT 5.0; yie6; Q312461; .NET CLR 1.0.3705; .NET CLR
1.1.4322)');
$mech->add_header(REQUEST_METHOD => 'GET');
$mech->add_header(Referer => 'http://personals.yahoo.com/');
$mech->get("http://personals.yahoo.com/");
$mech->success or die $mech->response->status_line;
$mech->form_number(1);
$mech->field('r_gender_pref' => "1");
$mech->field('r_gender' => "2");
$mech->field('r_min_age' => "25");
$mech->field('r_max_age' => "35");
$mech->field('csz' => "94011");
$mech->submit();
$mech->success or die "post failed:",$mech->response->status_line;
print $mech->content();
------------------------------
Date: Fri, 27 Feb 2004 19:35:55 +0000 (UTC)
From: J Krugman <jill_krugman@yahoo.com>
Subject: Re: How to reassign DB::OUT?
Message-Id: <c1o66r$b0h$1@reader2.panix.com>
In <c1n3m9$o9d$1@agate.berkeley.edu> Ilya Zakharevich <nospam-abuse@ilyaz.org> writes:
>[A complimentary Cc of this posting was sent to
>J Krugman
><jill_krugman@yahoo.com>], who wrote in article <c1loa7$ghg$1@reader2.panix.com>:
>> I have a huge data structure in the perl debugger, which I can view
>> with the x command. I would like to save the output of the x
>> command to a file. I thought that one way to do this would be to
>> reassign DB::OUT, but all my effort to do this have failed. How
>> can I reassign DB::OUT so that commands like 'x $foo' print to a
>> file?
>The simplest hack is to reset $ENV{PAGER} and do `|x $foo'...
I settled for a similar hack (O pager='> myfile', etc.).
>But
>personally, I would just call Dumpvar.pm manually...
Yes, that's an alternative, but dumpvar.pm is not documented, and
I have a hard time figuring out what the code does. What sub(s)
from dumpvar.pm would you call to get the same output as you'd get
from
|x $mongo_data_structure
jill
------------------------------
Date: Fri, 27 Feb 2004 20:15:19 +0000 (UTC)
From: Ilya Zakharevich <nospam-abuse@ilyaz.org>
Subject: Re: How to reassign DB::OUT?
Message-Id: <c1o8gn$139l$1@agate.berkeley.edu>
[A complimentary Cc of this posting was sent to
J Krugman
<jill_krugman@yahoo.com>], who wrote in article <c1o66r$b0h$1@reader2.panix.com>:
> >But
> >personally, I would just call Dumpvar.pm manually...
>
> Yes, that's an alternative, but dumpvar.pm is not documented
Oups, it should have been Dumpvalue.pm.
Yours,
Ilya
------------------------------
Date: Fri, 27 Feb 2004 21:29:18 +0000 (UTC)
From: J Krugman <jill_krugman@yahoo.com>
Subject: Re: How to reassign DB::OUT?
Message-Id: <c1ocre$e2a$1@reader2.panix.com>
In <c1o8gn$139l$1@agate.berkeley.edu> Ilya Zakharevich <nospam-abuse@ilyaz.org> writes:
>[A complimentary Cc of this posting was sent to
>J Krugman
><jill_krugman@yahoo.com>], who wrote in article <c1o66r$b0h$1@reader2.panix.com>:
>> >But
>> >personally, I would just call Dumpvar.pm manually...
>>
>> Yes, that's an alternative, but dumpvar.pm is not documented
>Oups, it should have been Dumpvalue.pm.
That's great! I much prefer the formatting of Dumpvalue.pm over
the one produced by Data::Dumper.
Thanks!
jill
------------------------------
Date: Fri, 27 Feb 2004 19:49:37 -0000
From: "David K. Wall" <dwall@fastmail.fm>
Subject: Re: RegExp Replace Using a Variable
Message-Id: <Xns949C96D3DBF03dkwwashere@216.168.3.30>
<nobull@mail.com> wrote:
> "David K. Wall" <dwall@fastmail.fm> wrote in message
> news:<Xns949ACF2798508dkwwashere@216.168.3.30>...
>> Brian McCauley <nobull@mail.com> wrote:
>>
>> > Ben Morrow <usenet@morrow.me.uk> writes:
>> >
>> >> We've just had this thread...
>> >
>> > And I commented there that this question comes in waves. It goes
>> > una[s]ked for weeks then along come two in two days.
>>
>> Maybe it follows a Poisson distribution.....
>>
>> If I could figure out how to find all occurences with Google, it might
>> be an interesting thing to look at.
>
> I was planning to do a lightning talk at YAPC::Europe::2004 on this
> question.
Cool! Are you going to put it on the web after the conference?
> So if you can get off your little Pacific island[1] and get to
> Northern Ireland you may just get to look at this interesting think.
I'd like to, but I don't think my employer would pay for it, and I'm
unwilling to pay my own way.
> [1] Or are you flying a flag of convenience?
Convenience. fastmail.fm is just where I get my email, like you and (I
suppose) mail.com. I'm actually in Cincinnati, not Micronesia. :-)
--
David "but there's no WKRP here" Wall
------------------------------
Date: Fri, 27 Feb 2004 16:56:08 -0500
From: "Matt Garrish" <matthew.garrish@sympatico.ca>
Subject: Re: site launch
Message-Id: <S1P%b.21308$253.1339112@news20.bellglobal.com>
"Greger" <greger@[NOSPAM-PLEASE]gh-webinteractive.com> wrote in message
news:%7M%b.48$MX6.25@reader1.news.jippii.net...
>
> welcome to our new site
>
Uh, you do realize that you posted to usenet? This message does not count as
a site.
Matt
------------------------------
Date: Fri, 27 Feb 2004 15:54:55 -0600
From: Tad McClellan <tadmc@augustmail.com>
Subject: Re: Thanks for the advice
Message-Id: <slrnc3vf5f.3oo.tadmc@magna.augustmail.com>
[ Newsgroups trimmed, I don't do the alt.* hierarchy ]
JC <jwcorpening@verizon.net> wrote:
> I code alot with PERL,
No you don't.
You code a lot with Perl.
Perl is not an acronym.
--
Tad McClellan SGML consulting
tadmc@augustmail.com Perl programming
Fort Worth, Texas
------------------------------
Date: 27 Feb 2004 14:40:45 -0800
From: tonyshirt@hotmail.com (TonyShirt)
Subject: traversing array slices
Message-Id: <52d54c07.0402271440.236a3ce7@posting.google.com>
#I'm Trying to traverse an array slice that has been passed to a sub
#I'm not sure what perl is doing when I set the reference to @_
$Slice[1]=["a","b","c"];
$Slice[2]=["d","e","f"];
printslice(\@Slice);
sub printslice{
@tempslice = @_;
foreach my $x (@tempslice){
foreach ($w,$y,$z){
print $w."\n";
}
}
}
#I would like the output to be the first value in the slice i.e.:
#a
#d
#Could any one help?
------------------------------
Date: Fri, 27 Feb 2004 12:49:39 -0800
From: "Brian Helterline" <brian_helterline@hp.com>
Subject: Re: Win32::OLE - how to effectively create large spreadsheet?
Message-Id: <403fadab$1@usenet01.boi.hp.com>
"Tom Niesytto" <woland99@yahoo.com> wrote in message
news:694461f6.0402262024.6a72d5bf@posting.google.com...
> Howdy - I am using Win32::OLE to create a spreasheet from data.
> Spreadsheet is fairly big (2000 rows x 30 columns) and cells contain
> embedded newlines (if itwas not for that I would simbly import tab
> delimited file).
> To write to Excel spreadsheet I do sth like:
> -----------------------------------------
> # write to a particular cell
> my $wsheet = $wbook->Worksheets(1);
> my $ref;
> my $cell_value;
> my $row_num = 0;
> my $col_num = 0;
>
> foreach $ref (@{$array_ref}) {
> $row_num++;
> $col_num = 0;
>
> foreach $cell_value (@{$ref}){
> $col_num++;
> $wsheet->Cells($row_num,$col_num)->{Value} = "$cell_value";
> }
Have you tried writing it all at once? It *may* be faster
check out the examples under Win32::OLE:
# write a 2 rows by 3 columns range
$sheet->Range("A8:C9")->{Value} = [[ undef, 'Xyzzy', 'Plugh' ],
[ 42, 'Perl', 3.1415 ]];
It appears you already have the correct reference in $array_ref. You just
have
to figure out the correct argument to the Range method.
>
> }
> $wbook->SaveAs($fullname_output_file);
> undef $wbook;
> }
> -----------------------------
>
> Problem is - it is slow.
> Takes about 20 mins to write out the output.
> What am I doing wrong here?
>
> Thanks for any pointers,
>
> JT
------------------------------
Date: Fri, 27 Feb 2004 23:02:56 GMT
From: tiltonj@erols.com (Jay Tilton)
Subject: Re: Win32::OLE - how to effectively create large spreadsheet?
Message-Id: <403fcb79.2837076@news.erols.com>
woland99@yahoo.com (Tom Niesytto) wrote:
: Howdy - I am using Win32::OLE to create a spreasheet from data.
: Spreadsheet is fairly big (2000 rows x 30 columns) and cells contain
: embedded newlines (if itwas not for that I would simbly import tab
: delimited file).
: To write to Excel spreadsheet I do sth like:
: -----------------------------------------
: sub write_array_as_excel_file
: {
: my $output_file = shift;
: my $array_ref = shift; #reference to array of references to arrays
:
: eval{$excel = Win32::OLE->GetActiveObject('Excel.Application')};
: die "Excel not installed" if $@;
:
: unless (defined $excel) {
: $excel = Win32::OLE->new('Excel.Application', 'Quit')
: or die "Oops, cannot start Excel";
: }
: #to avoid excessive dialogs when saving in non-Excel format
: $excel->{DisplayAlerts} = 0;
:
: # get a new workbook
: my $wbook = $excel->Workbooks->Add
: || print STDERR "didnt add new workbook: $!\n";
That failure message is misleading.
$! has nothing to do with OLE errors.
: # write to a particular cell
: my $wsheet = $wbook->Worksheets(1);
: my $ref;
: my $cell_value;
: my $row_num = 0;
: my $col_num = 0;
: foreach $ref (@{$array_ref}) {
: $row_num++;
: $col_num = 0;
: foreach $cell_value (@{$ref}){
: $col_num++;
: $wsheet->Cells($row_num,$col_num)->{Value} = "$cell_value";
^^^^^^^^^^^^^
See perlfaq4, `` What's wrong with always quoting "$vars"? ''
: }
: }
: $wbook->SaveAs($fullname_output_file);
: undef $wbook;
Explicitly undef'ing a lexical variable that is about to fall out of scope
is unnecessary.
: }
: -----------------------------
:
: Problem is - it is slow.
: Takes about 20 mins to write out the output.
: What am I doing wrong here?
Assigning values to 60,000 cells one at a time is like filling a bathtub
with an eyedropper.
Excel can fill an entire range of cells for you. Tell it the size of your
tub and open the faucet.
sub write_array_as_excel_file {
my $output_file = shift;
my $array_ref = shift; #reference to AoA
# Determine the dimensions of a rectangular range of
# cells that will hold the data.
require List::Util;
my $ncols = List::Util::max( map scalar @$_, @$array_ref );
my $nrows = @$array_ref;
# Creation of excel object, workbook object, and
# worksheet object elided.
$wsheet->range(
$wsheet->cells( 1, 1),
$wsheet->cells( $nrows, $ncols ),
) -> {Value} = $array_ref;
}
Many orders of magnitude faster.
------------------------------
Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>
Administrivia:
#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc. For subscription or unsubscription requests, send
#the single line:
#
# subscribe perl-users
#or:
# unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.
NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice.
To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.
#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.
#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.
------------------------------
End of Perl-Users Digest V10 Issue 6190
***************************************