From doug at phoenixinternet.com Mon Feb 2 14:43:45 2004 From: doug at phoenixinternet.com (doug@phoenixinternet.com) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: Meeting 02/05/2004 Message-ID: <.24.221.96.25.1075754625.squirrel@phoenixinternet.com> Please RSVP... We'll be having a Phoenix.pm meeting Thursday, February 5th at 7:00PM. It will be held at Bowne, which is located at 1500 N. Central Avenue, which is on the Southwest corner of Central and McDowell. The parking lot is gated, so just press the button on the intercom, and tell the receptionist that you are there for the Perl meeting. Park in the lot that is straight ahead from the entrance on the South side of McDowell. Park in any uncovered, non-reserved space. Proceed to the main lobby, which is on the Northeast side of the parking lot. I'll be presenting Perl 101. -- Doug Miles From doug at phoenixinternet.com Mon Feb 2 14:49:56 2004 From: doug at phoenixinternet.com (doug@phoenixinternet.com) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: Meeting next month In-Reply-To: <20040117162301.GI19546@illogics.org> References: <20040117162301.GI19546@illogics.org> Message-ID: <.24.221.96.25.1075754996.squirrel@phoenixinternet.com> Scott Walters said: > http://phoenix.pm.org/wiki/index.cgi?PerlMongersIdeas - that's the > current meeting idea suggestion list. Feel free to add to it, everyone. > > Here's another suggestion - Perl 6 101 =) > > There was a pretty good consensus on the Four Peaks Tempe thing. > Perhaps we could do the real meeting, do 101 there, then retire to > Four Peaks for discussion and geek pissing matches. Er, I mean > getting pissed and watching footie matches. Meet at Four Peeks around > 9:30. I decided to hold the meeting at Bowne, because the 101 presentation takes long enough as it is, without food/drink ordering and whatever other distractions. That said, feel free to put together another meeting at the Four Peaks if you want to. Hope I didn't step on anyone's toes. :) -- Doug Miles From intertwingled at qwest.net Mon Feb 2 15:26:17 2004 From: intertwingled at qwest.net (intertwingled) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: Meeting next month In-Reply-To: <.24.221.96.25.1075754996.squirrel@phoenixinternet.com> References: <20040117162301.GI19546@illogics.org> <.24.221.96.25.1075754996.squirrel@phoenixinternet.com> Message-ID: <401EC079.3080502@qwest.net> doug@phoenixinternet.com wrote: >Scott Walters said: > > >>http://phoenix.pm.org/wiki/index.cgi?PerlMongersIdeas - that's the >>current meeting idea suggestion list. Feel free to add to it, everyone. >> >>Here's another suggestion - Perl 6 101 =) >> >>There was a pretty good consensus on the Four Peaks Tempe thing. >>Perhaps we could do the real meeting, do 101 there, then retire to >>Four Peaks for discussion and geek pissing matches. Er, I mean >>getting pissed and watching footie matches. Meet at Four Peeks around >>9:30. >> >> > >I decided to hold the meeting at Bowne, because the 101 presentation takes >long enough as it is, without food/drink ordering and whatever other >distractions. That said, feel free to put together another meeting at the >Four Peaks if you want to. Hope I didn't step on anyone's toes. :) > > > OUCH! From scott at illogics.org Tue Feb 3 00:23:37 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: another crasher, for everyones amusement Message-ID: <20040203062337.GO509@illogics.org> ----- Forwarded message from "kstar@verizon.net ion@alku.ion.yi.org (via RT)" ----- List: contact perl5-porters-help@perl.org; run by ezmlm Archive: Subject: [perl #25824] Segmentation fault with sub x { shift; @a = @b; eval { use } } Ticket: perl #25824 To: "mailing list perl5-porters@perl.org perl5-porters@perl.org perl5-porters@perl.org bugs-bitbucket@netlabs.develooper.com perl5-porters@perl.org perl5-porters@perl.org" From: "kstar@verizon.net ion@alku.ion.yi.org (via RT)" # New Ticket Created by ion@alku.ion.yi.org # Please include the string: [perl #25824] # in the subject line of all future correspondence about this issue. # This is a bug report for perl from ion+perlbug@ion.yi.org, generated with the help of perlbug 1.34 running under perl v5.8.3. ----------------------------------------------------------------- $ perl -e 'sub x { shift; @a = @b; eval { use } }' Segmentation fault To reproduce the segfault the following needs to be done in a sub: - @_ must be modified. - A list or a hash must be assigned to a list or a hash. - eval { use }; must be done finally. The parameters for use don't seem to matter. gdb backtrace: #0 0x0809e156 in Perl_pad_free () #1 0x0808e179 in Perl_op_clear () #2 0x0808e0a8 in Perl_op_free () #3 0x0808e07b in Perl_op_free () #4 0x080967b3 in Perl_newATTRSUB () #5 0x0808c297 in Perl_yyparse () #6 0x08061c64 in perl_parse () #7 0x080616cf in perl_parse () #8 0x0805f3da in main () ----------------------------------------------------------------- --- Flags: category=core severity=low --- Site configuration information for perl v5.8.3: Configured by ion at Mon Jan 19 12:00:54 EET 2004. Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration: Platform: osname=linux, osvers=2.6.0-gentoo, archname=i586-linux uname='linux alku 2.6.0-gentoo #2 smp sun dec 21 10:35:44 eet 2003 i686 celeron (mendocino) genuineintel gnulinux ' config_args='-des -Darchname=i586-linux -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe -Duselargefiles -Dd_dosuid -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman3ext=3pm -Dcf_by=Gentoo -Ud_csh -Di_gdbm -Di_db -Di_ndbm' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe', cppflags='-DPERL5 -fno-strict-aliasing' ccversion='', gccversion='3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, prototype=define Linker and Libraries: ld='gcc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=/lib/libc-2.3.3.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.3.3' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' Locally applied patches: --- @INC for perl v5.8.3: /etc/perl /usr/lib/perl5/site_perl/5.8.3/i586-linux /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2/i586-linux /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.3/i586-linux /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2/i586-linux /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.3/i586-linux /usr/lib/perl5/5.8.3 /usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.2/i586-linux /usr/lib/perl5/site_perl/5.8.2 . --- Environment for perl v5.8.3: HOME=/home/ion LANG=en_US.UTF-8 LANGUAGE (unset) LC_CTYPE=fi_FI.UTF-8 LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/home/ion/bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/sbin:/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/i586-pc-linux-gnu/gcc-bin/3.3:/usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/jre/bin:/usr/qt/3/bin:/usr/kde/3.1/bin:/usr/games/bin PERL_BADLANG (unset) SHELL=/bin/bash ----- End forwarded message ----- From intertwingled at qwest.net Tue Feb 3 01:17:48 2004 From: intertwingled at qwest.net (intertwingled) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: another crasher, for everyones amusement In-Reply-To: <20040203062337.GO509@illogics.org> References: <20040203062337.GO509@illogics.org> Message-ID: <401F4B1C.5000006@qwest.net> Does nothing under v5.8.0 Scott Walters wrote: >----- Forwarded message from "kstar@verizon.net ion@alku.ion.yi.org (via RT)" ----- > >List: contact perl5-porters-help@perl.org; run by ezmlm >Archive: >Subject: [perl #25824] Segmentation fault with sub x { shift; @a = @b; eval { use } } >Ticket: perl #25824 >To: "mailing list perl5-porters@perl.org perl5-porters@perl.org perl5-porters@perl.org bugs-bitbucket@netlabs.develooper.com perl5-porters@perl.org perl5-porters@perl.org" >From: "kstar@verizon.net ion@alku.ion.yi.org (via RT)" > > ># New Ticket Created by ion@alku.ion.yi.org ># Please include the string: [perl #25824] ># in the subject line of all future correspondence about this issue. ># > > > >This is a bug report for perl from ion+perlbug@ion.yi.org, >generated with the help of perlbug 1.34 running under perl v5.8.3. > > >----------------------------------------------------------------- >$ perl -e 'sub x { shift; @a = @b; eval { use } }' >Segmentation fault > >To reproduce the segfault the following needs to be done in a sub: >- @_ must be modified. >- A list or a hash must be assigned to a list or a hash. >- eval { use }; must be done finally. The parameters for use don't > seem to matter. > >gdb backtrace: >#0 0x0809e156 in Perl_pad_free () >#1 0x0808e179 in Perl_op_clear () >#2 0x0808e0a8 in Perl_op_free () >#3 0x0808e07b in Perl_op_free () >#4 0x080967b3 in Perl_newATTRSUB () >#5 0x0808c297 in Perl_yyparse () >#6 0x08061c64 in perl_parse () >#7 0x080616cf in perl_parse () >#8 0x0805f3da in main () >----------------------------------------------------------------- >--- >Flags: > category=core > severity=low >--- >Site configuration information for perl v5.8.3: > >Configured by ion at Mon Jan 19 12:00:54 EET 2004. > >Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration: > Platform: > osname=linux, osvers=2.6.0-gentoo, archname=i586-linux > uname='linux alku 2.6.0-gentoo #2 smp sun dec 21 10:35:44 eet 2003 i686 celeron (mendocino) genuineintel gnulinux ' > config_args='-des -Darchname=i586-linux -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe -Duselargefiles -Dd_dosuid -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman3ext=3pm -Dcf_by=Gentoo -Ud_csh -Di_gdbm -Di_db -Di_ndbm' > hint=recommended, useposix=true, d_sigaction=define > usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > use64bitint=undef use64bitall=undef uselongdouble=undef > usemymalloc=n, bincompat5005=undef > Compiler: > cc='gcc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', > optimize='-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe', > cppflags='-DPERL5 -fno-strict-aliasing' > ccversion='', gccversion='3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)', gccosandvers='' > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 > alignbytes=4, prototype=define > Linker and Libraries: > ld='gcc', ldflags =' -L/usr/local/lib' > libpth=/usr/local/lib /lib /usr/lib > libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc > perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc > libc=/lib/libc-2.3.3.so, so=so, useshrplib=false, libperl=libperl.a > gnulibc_version='2.3.3' > Dynamic Linking: > dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' > cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' > >Locally applied patches: > > >--- >@INC for perl v5.8.3: > /etc/perl > /usr/lib/perl5/site_perl/5.8.3/i586-linux > /usr/lib/perl5/site_perl/5.8.3 > /usr/lib/perl5/site_perl/5.8.2/i586-linux > /usr/lib/perl5/site_perl/5.8.2 > /usr/lib/perl5/site_perl > /usr/lib/perl5/vendor_perl/5.8.3/i586-linux > /usr/lib/perl5/vendor_perl/5.8.3 > /usr/lib/perl5/vendor_perl/5.8.2/i586-linux > /usr/lib/perl5/vendor_perl/5.8.2 > /usr/lib/perl5/vendor_perl > /usr/lib/perl5/5.8.3/i586-linux > /usr/lib/perl5/5.8.3 > /usr/local/lib/site_perl > /usr/lib/perl5/site_perl/5.8.2/i586-linux > /usr/lib/perl5/site_perl/5.8.2 > . > >--- >Environment for perl v5.8.3: > HOME=/home/ion > LANG=en_US.UTF-8 > LANGUAGE (unset) > LC_CTYPE=fi_FI.UTF-8 > LD_LIBRARY_PATH (unset) > LOGDIR (unset) > PATH=/home/ion/bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/sbin:/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/i586-pc-linux-gnu/gcc-bin/3.3:/usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/jre/bin:/usr/qt/3/bin:/usr/kde/3.1/bin:/usr/games/bin > PERL_BADLANG (unset) > SHELL=/bin/bash > >----- End forwarded message ----- > > > > From scott at illogics.org Tue Feb 3 02:06:48 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: another crasher, for everyones amusement Message-ID: <20040203080647.GU509@illogics.org> The bug report claims version 5.8.3. I'm running a version of bleed that is about two weeks out of date and it crashes it. Bugs come as quiclky as they go =) -scott On 0, intertwingled wrote: > > Does nothing under v5.8.0 > > Scott Walters wrote: > > >----- Forwarded message from "kstar@verizon.net ion@alku.ion.yi.org (via RT)" ----- > > > >List: contact perl5-porters-help@perl.org; run by ezmlm > >Archive: > >Subject: [perl #25824] Segmentation fault with sub x { shift; @a = @b; eval { use } } > >Ticket: perl #25824 > >To: "mailing list perl5-porters@perl.org perl5-porters@perl.org perl5-porters@perl.org bugs-bitbucket@netlabs.develooper.com perl5-porters@perl.org perl5-porters@perl.org" > >From: "kstar@verizon.net ion@alku.ion.yi.org (via RT)" > > > > > ># New Ticket Created by ion@alku.ion.yi.org > ># Please include the string: [perl #25824] > ># in the subject line of all future correspondence about this issue. > ># > > > > > > > >This is a bug report for perl from ion+perlbug@ion.yi.org, > >generated with the help of perlbug 1.34 running under perl v5.8.3. > > > > > >----------------------------------------------------------------- > >$ perl -e 'sub x { shift; @a = @b; eval { use } }' > >Segmentation fault > > > >To reproduce the segfault the following needs to be done in a sub: > >- @_ must be modified. > >- A list or a hash must be assigned to a list or a hash. > >- eval { use }; must be done finally. The parameters for use don't > > seem to matter. > > > >gdb backtrace: > >#0 0x0809e156 in Perl_pad_free () > >#1 0x0808e179 in Perl_op_clear () > >#2 0x0808e0a8 in Perl_op_free () > >#3 0x0808e07b in Perl_op_free () > >#4 0x080967b3 in Perl_newATTRSUB () > >#5 0x0808c297 in Perl_yyparse () > >#6 0x08061c64 in perl_parse () > >#7 0x080616cf in perl_parse () > >#8 0x0805f3da in main () > >----------------------------------------------------------------- > >--- > >Flags: > > category=core > > severity=low > >--- > >Site configuration information for perl v5.8.3: > > > >Configured by ion at Mon Jan 19 12:00:54 EET 2004. > > > >Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration: > > Platform: > > osname=linux, osvers=2.6.0-gentoo, archname=i586-linux > > uname='linux alku 2.6.0-gentoo #2 smp sun dec 21 10:35:44 eet 2003 i686 celeron (mendocino) genuineintel gnulinux ' > > config_args='-des -Darchname=i586-linux -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe -Duselargefiles -Dd_dosuid -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman3ext=3pm -Dcf_by=Gentoo -Ud_csh -Di_gdbm -Di_db -Di_ndbm' > > hint=recommended, useposix=true, d_sigaction=define > > usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef > > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > > use64bitint=undef use64bitall=undef uselongdouble=undef > > usemymalloc=n, bincompat5005=undef > > Compiler: > > cc='gcc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', > > optimize='-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe', > > cppflags='-DPERL5 -fno-strict-aliasing' > > ccversion='', gccversion='3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)', gccosandvers='' > > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 > > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 > > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 > > alignbytes=4, prototype=define > > Linker and Libraries: > > ld='gcc', ldflags =' -L/usr/local/lib' > > libpth=/usr/local/lib /lib /usr/lib > > libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc > > perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc > > libc=/lib/libc-2.3.3.so, so=so, useshrplib=false, libperl=libperl.a > > gnulibc_version='2.3.3' > > Dynamic Linking: > > dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' > > cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' > > > >Locally applied patches: > > > > > >--- > >@INC for perl v5.8.3: > > /etc/perl > > /usr/lib/perl5/site_perl/5.8.3/i586-linux > > /usr/lib/perl5/site_perl/5.8.3 > > /usr/lib/perl5/site_perl/5.8.2/i586-linux > > /usr/lib/perl5/site_perl/5.8.2 > > /usr/lib/perl5/site_perl > > /usr/lib/perl5/vendor_perl/5.8.3/i586-linux > > /usr/lib/perl5/vendor_perl/5.8.3 > > /usr/lib/perl5/vendor_perl/5.8.2/i586-linux > > /usr/lib/perl5/vendor_perl/5.8.2 > > /usr/lib/perl5/vendor_perl > > /usr/lib/perl5/5.8.3/i586-linux > > /usr/lib/perl5/5.8.3 > > /usr/local/lib/site_perl > > /usr/lib/perl5/site_perl/5.8.2/i586-linux > > /usr/lib/perl5/site_perl/5.8.2 > > . > > > >--- > >Environment for perl v5.8.3: > > HOME=/home/ion > > LANG=en_US.UTF-8 > > LANGUAGE (unset) > > LC_CTYPE=fi_FI.UTF-8 > > LD_LIBRARY_PATH (unset) > > LOGDIR (unset) > > PATH=/home/ion/bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/sbin:/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/i586-pc-linux-gnu/gcc-bin/3.3:/usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/jre/bin:/usr/qt/3/bin:/usr/kde/3.1/bin:/usr/games/bin > > PERL_BADLANG (unset) > > SHELL=/bin/bash > > > >----- End forwarded message ----- > > > > > > > > > > From johngnub at cox.net Tue Feb 3 09:16:46 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <.24.221.96.25.1075754625.squirrel@phoenixinternet.com> Message-ID: JB has the semi-night shift; Sorry; JB On Monday, February 2, 2004, at 01:43 PM, doug@phoenixinternet.com wrote: > Please RSVP... > > We'll be having a Phoenix.pm meeting Thursday, February 5th at 7:00PM. > It will be held at Bowne, which is located at 1500 N. Central Avenue, > which is on the Southwest corner of Central and McDowell. The parking > lot is gated, so just press the button on the intercom, and tell the > receptionist that you are there for the Perl meeting. Park in the lot > that is straight ahead from the entrance on the South side of McDowell. > Park in any uncovered, non-reserved space. Proceed to the main lobby, > which is on the Northeast side of the parking lot. > > I'll be presenting Perl 101. > > -- > > Doug Miles > From friedman at highwire.stanford.edu Tue Feb 3 11:06:05 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: another crasher, for everyones amusement In-Reply-To: <20040203062337.GO509@illogics.org> References: <20040203062337.GO509@illogics.org> Message-ID: <40937CC4-566B-11D8-9F97-000A956CAA2C@highwire.stanford.edu> Heh. "for everyone's amusement". Amazingly enough, my code could be hit by this bug. :-) If you look at the Perl Cookbook, it suggests that one way to only load modules when needed is to put the 'use' into a eval{} and then it won't be executed until runtime. That way the startup time for your script is lessened and, hopefully, some of the modules might not even need to be loaded at all. While the minimal code to create the bug seems pretty silly, I can completely see where this happens in practice... Now I'm glad I didn't upgrade from 5.8.0 yet. -- Mike On Feb 2, 2004, at 11:23 PM, Scott Walters wrote: > > ----- Forwarded message from "kstar@verizon.net ion@alku.ion.yi.org > (via RT)" ----- > > List: contact perl5-porters-help@perl.org; run by ezmlm > Archive: > Subject: [perl #25824] Segmentation fault with sub x { shift; @a = @b; > eval { use } } > Ticket: perl #25824 > To: "mailing list perl5-porters@perl.org perl5-porters@perl.org > perl5-porters@perl.org bugs-bitbucket@netlabs.develooper.com > perl5-porters@perl.org perl5-porters@perl.org" > From: "kstar@verizon.net ion@alku.ion.yi.org (via RT)" > > > > # New Ticket Created by ion@alku.ion.yi.org > # Please include the string: [perl #25824] > # in the subject line of all future correspondence about this issue. > # > > > > This is a bug report for perl from ion+perlbug@ion.yi.org, > generated with the help of perlbug 1.34 running under perl v5.8.3. > > > ----------------------------------------------------------------- > $ perl -e 'sub x { shift; @a = @b; eval { use } }' > Segmentation fault > > To reproduce the segfault the following needs to be done in a sub: > - @_ must be modified. > - A list or a hash must be assigned to a list or a hash. > - eval { use }; must be done finally. The parameters for use don't > seem to matter. > > gdb backtrace: > #0 0x0809e156 in Perl_pad_free () > #1 0x0808e179 in Perl_op_clear () > #2 0x0808e0a8 in Perl_op_free () > #3 0x0808e07b in Perl_op_free () > #4 0x080967b3 in Perl_newATTRSUB () > #5 0x0808c297 in Perl_yyparse () > #6 0x08061c64 in perl_parse () > #7 0x080616cf in perl_parse () > #8 0x0805f3da in main () > ----------------------------------------------------------------- > --- > Flags: > category=core > severity=low > --- > Site configuration information for perl v5.8.3: > > Configured by ion at Mon Jan 19 12:00:54 EET 2004. > > Summary of my perl5 (revision 5.0 version 8 subversion 3) > configuration: > Platform: > osname=linux, osvers=2.6.0-gentoo, archname=i586-linux > uname='linux alku 2.6.0-gentoo #2 smp sun dec 21 10:35:44 eet 2003 > i686 celeron (mendocino) genuineintel gnulinux ' > config_args='-des -Darchname=i586-linux -Dcccdlflags=-fPIC > -Dccdlflags=-rdynamic -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr > -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O3 -march=pentium2 > -mcpu=pentium2 -funroll-loops -pipe -Duselargefiles -Dd_dosuid > -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman3ext=3pm -Dcf_by=Gentoo > -Ud_csh -Di_gdbm -Di_db -Di_ndbm' > hint=recommended, useposix=true, d_sigaction=define > usethreads=undef use5005threads=undef useithreads=undef > usemultiplicity=undef > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > use64bitint=undef use64bitall=undef uselongdouble=undef > usemymalloc=n, bincompat5005=undef > Compiler: > cc='gcc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64', > optimize='-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe', > cppflags='-DPERL5 -fno-strict-aliasing' > ccversion='', gccversion='3.3.2 20031218 (Gentoo Linux 3.3.2-r5, > propolice-3.3-7)', gccosandvers='' > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', > lseeksize=8 > alignbytes=4, prototype=define > Linker and Libraries: > ld='gcc', ldflags =' -L/usr/local/lib' > libpth=/usr/local/lib /lib /usr/lib > libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc > perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc > libc=/lib/libc-2.3.3.so, so=so, useshrplib=false, libperl=libperl.a > gnulibc_version='2.3.3' > Dynamic Linking: > dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, > ccdlflags='-rdynamic' > cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' > > Locally applied patches: > > > --- > @INC for perl v5.8.3: > /etc/perl > /usr/lib/perl5/site_perl/5.8.3/i586-linux > /usr/lib/perl5/site_perl/5.8.3 > /usr/lib/perl5/site_perl/5.8.2/i586-linux > /usr/lib/perl5/site_perl/5.8.2 > /usr/lib/perl5/site_perl > /usr/lib/perl5/vendor_perl/5.8.3/i586-linux > /usr/lib/perl5/vendor_perl/5.8.3 > /usr/lib/perl5/vendor_perl/5.8.2/i586-linux > /usr/lib/perl5/vendor_perl/5.8.2 > /usr/lib/perl5/vendor_perl > /usr/lib/perl5/5.8.3/i586-linux > /usr/lib/perl5/5.8.3 > /usr/local/lib/site_perl > /usr/lib/perl5/site_perl/5.8.2/i586-linux > /usr/lib/perl5/site_perl/5.8.2 > . > > --- > Environment for perl v5.8.3: > HOME=/home/ion > LANG=en_US.UTF-8 > LANGUAGE (unset) > LC_CTYPE=fi_FI.UTF-8 > LD_LIBRARY_PATH (unset) > LOGDIR (unset) > > PATH=/home/ion/bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/sbin:/bin:/ > usr/bin:/usr/local/bin:/opt/bin:/usr/i586-pc-linux-gnu/gcc-bin/3.3:/ > usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/ > jre/bin:/usr/qt/3/bin:/usr/kde/3.1/bin:/usr/games/bin > PERL_BADLANG (unset) > SHELL=/bin/bash > > ----- End forwarded message ----- > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From friedman at highwire.stanford.edu Tue Feb 3 11:08:48 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:14 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <.24.221.96.25.1075754625.squirrel@phoenixinternet.com> References: <.24.221.96.25.1075754625.squirrel@phoenixinternet.com> Message-ID: I'll be there. I never attended a Perl 101 before. I'm looking forward to seeing what I've missed, having learned Perl on my own. -- Mike On Feb 2, 2004, at 1:43 PM, doug@phoenixinternet.com wrote: > Please RSVP... > > We'll be having a Phoenix.pm meeting Thursday, February 5th at 7:00PM. > It will be held at Bowne, which is located at 1500 N. Central Avenue, > which is on the Southwest corner of Central and McDowell. The parking > lot is gated, so just press the button on the intercom, and tell the > receptionist that you are there for the Perl meeting. Park in the lot > that is straight ahead from the entrance on the South side of McDowell. > Park in any uncovered, non-reserved space. Proceed to the main lobby, > which is on the Northeast side of the parking lot. > > I'll be presenting Perl 101. > > -- > > Doug Miles > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From scott at illogics.org Tue Feb 3 15:17:27 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: another crasher, for everyones amusement Message-ID: <20040203211727.GW509@illogics.org> Dave Michell had this to say about the bug. Like most crashers in Perl these days, it is pretty obscure. > Thanks for the report. > > P5Pers: it can be reduced to: > > ./perl -e 'sub f { @a=@b=@c; {use} }' > > What is happening is that when 'use' is seen, the parser starts a new > sub by calling start_subparse() : > > use : USE startsub > { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ } > WORD WORD listexpr ';' > { utilize($1, $2, $4, $5, $6); } > ; > startsub: /* NULL */ /* start a regular subroutine scope */ > { $$ = start_subparse(FALSE, 0); } > > This creates a new pad and updates PL_comppad, PL_curpad (with the old > ones being put on the save stack). > When the compile blows up due to the syntax error, the recovery works > it's way down to the newATTRSUB() call associated with f; but because > PL_error_count > 0, newATTRSUB() does an op_free(block). This tries > to free all the PADTMPs associated with all the @a=@b=@c ops, but > still using the new pad allocated for 'use'. Coredump ensues. > > Clearly the correct fix is for the savestack to be properly popped during > the error recovery, by I really don't understand how YACC error recovery > works, so I'm stuck :-( > > The index returned by start_subparse() somehow needs to be saved and > used to pop the savestack. > > Dave. > > > On 0, Michael Friedman wrote: > > > > Heh. "for everyone's amusement". > > Amazingly enough, my code could be hit by this bug. :-) > > If you look at the Perl Cookbook, it suggests that one way to only load > > modules when needed is to put the 'use' into a eval{} and then it won't > > be executed until runtime. That way the startup time for your script is > > lessened and, hopefully, some of the modules might not even need to be > > loaded at all. > > > > While the minimal code to create the bug seems pretty silly, I can > > completely see where this happens in practice... > > > > Now I'm glad I didn't upgrade from 5.8.0 yet. > > -- Mike > > > > On Feb 2, 2004, at 11:23 PM, Scott Walters wrote: > > > > > > > > ----- Forwarded message from "kstar@verizon.net ion@alku.ion.yi.org > > > (via RT)" ----- > > > > > > List: contact perl5-porters-help@perl.org; run by ezmlm > > > Archive: > > > Subject: [perl #25824] Segmentation fault with sub x { shift; @a = @b; > > > eval { use } } > > > Ticket: perl #25824 > > > To: "mailing list perl5-porters@perl.org perl5-porters@perl.org > > > perl5-porters@perl.org bugs-bitbucket@netlabs.develooper.com > > > perl5-porters@perl.org perl5-porters@perl.org" > > > From: "kstar@verizon.net ion@alku.ion.yi.org (via RT)" > > > > > > > > > > > > # New Ticket Created by ion@alku.ion.yi.org > > > # Please include the string: [perl #25824] > > > # in the subject line of all future correspondence about this issue. > > > # > > > > > > > > > > > > This is a bug report for perl from ion+perlbug@ion.yi.org, > > > generated with the help of perlbug 1.34 running under perl v5.8.3. > > > > > > > > > ----------------------------------------------------------------- > > > $ perl -e 'sub x { shift; @a = @b; eval { use } }' > > > Segmentation fault > > > > > > To reproduce the segfault the following needs to be done in a sub: > > > - @_ must be modified. > > > - A list or a hash must be assigned to a list or a hash. > > > - eval { use }; must be done finally. The parameters for use don't > > > seem to matter. > > > > > > gdb backtrace: > > > #0 0x0809e156 in Perl_pad_free () > > > #1 0x0808e179 in Perl_op_clear () > > > #2 0x0808e0a8 in Perl_op_free () > > > #3 0x0808e07b in Perl_op_free () > > > #4 0x080967b3 in Perl_newATTRSUB () > > > #5 0x0808c297 in Perl_yyparse () > > > #6 0x08061c64 in perl_parse () > > > #7 0x080616cf in perl_parse () > > > #8 0x0805f3da in main () > > > ----------------------------------------------------------------- > > > --- > > > Flags: > > > category=core > > > severity=low > > > --- > > > Site configuration information for perl v5.8.3: > > > > > > Configured by ion at Mon Jan 19 12:00:54 EET 2004. > > > > > > Summary of my perl5 (revision 5.0 version 8 subversion 3) > > > configuration: > > > Platform: > > > osname=linux, osvers=2.6.0-gentoo, archname=i586-linux > > > uname='linux alku 2.6.0-gentoo #2 smp sun dec 21 10:35:44 eet 2003 > > > i686 celeron (mendocino) genuineintel gnulinux ' > > > config_args='-des -Darchname=i586-linux -Dcccdlflags=-fPIC > > > -Dccdlflags=-rdynamic -Dcc=gcc -Dprefix=/usr -Dvendorprefix=/usr > > > -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O3 -march=pentium2 > > > -mcpu=pentium2 -funroll-loops -pipe -Duselargefiles -Dd_dosuid > > > -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman3ext=3pm -Dcf_by=Gentoo > > > -Ud_csh -Di_gdbm -Di_db -Di_ndbm' > > > hint=recommended, useposix=true, d_sigaction=define > > > usethreads=undef use5005threads=undef useithreads=undef > > > usemultiplicity=undef > > > useperlio=define d_sfio=undef uselargefiles=define usesocks=undef > > > use64bitint=undef use64bitall=undef uselongdouble=undef > > > usemymalloc=n, bincompat5005=undef > > > Compiler: > > > cc='gcc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE > > > -D_FILE_OFFSET_BITS=64', > > > optimize='-O3 -march=pentium2 -mcpu=pentium2 -funroll-loops -pipe', > > > cppflags='-DPERL5 -fno-strict-aliasing' > > > ccversion='', gccversion='3.3.2 20031218 (Gentoo Linux 3.3.2-r5, > > > propolice-3.3-7)', gccosandvers='' > > > intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 > > > d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 > > > ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', > > > lseeksize=8 > > > alignbytes=4, prototype=define > > > Linker and Libraries: > > > ld='gcc', ldflags =' -L/usr/local/lib' > > > libpth=/usr/local/lib /lib /usr/lib > > > libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc > > > perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc > > > libc=/lib/libc-2.3.3.so, so=so, useshrplib=false, libperl=libperl.a > > > gnulibc_version='2.3.3' > > > Dynamic Linking: > > > dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, > > > ccdlflags='-rdynamic' > > > cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' > > > > > > Locally applied patches: > > > > > > > > > --- > > > @INC for perl v5.8.3: > > > /etc/perl > > > /usr/lib/perl5/site_perl/5.8.3/i586-linux > > > /usr/lib/perl5/site_perl/5.8.3 > > > /usr/lib/perl5/site_perl/5.8.2/i586-linux > > > /usr/lib/perl5/site_perl/5.8.2 > > > /usr/lib/perl5/site_perl > > > /usr/lib/perl5/vendor_perl/5.8.3/i586-linux > > > /usr/lib/perl5/vendor_perl/5.8.3 > > > /usr/lib/perl5/vendor_perl/5.8.2/i586-linux > > > /usr/lib/perl5/vendor_perl/5.8.2 > > > /usr/lib/perl5/vendor_perl > > > /usr/lib/perl5/5.8.3/i586-linux > > > /usr/lib/perl5/5.8.3 > > > /usr/local/lib/site_perl > > > /usr/lib/perl5/site_perl/5.8.2/i586-linux > > > /usr/lib/perl5/site_perl/5.8.2 > > > . > > > > > > --- > > > Environment for perl v5.8.3: > > > HOME=/home/ion > > > LANG=en_US.UTF-8 > > > LANGUAGE (unset) > > > LC_CTYPE=fi_FI.UTF-8 > > > LD_LIBRARY_PATH (unset) > > > LOGDIR (unset) > > > > > > PATH=/home/ion/bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/sbin:/bin:/ > > > usr/bin:/usr/local/bin:/opt/bin:/usr/i586-pc-linux-gnu/gcc-bin/3.3:/ > > > usr/X11R6/bin:/opt/blackdown-jdk-1.4.1/bin:/opt/blackdown-jdk-1.4.1/ > > > jre/bin:/usr/qt/3/bin:/usr/kde/3.1/bin:/usr/games/bin > > > PERL_BADLANG (unset) > > > SHELL=/bin/bash > > > > > > ----- End forwarded message ----- > > > > > --------------------------------------------------------------------- > > Michael Friedman HighWire Press, Stanford Southwest > > Phone: 480-456-0880 Tempe, Arizona > > FAX: 270-721-8034 > > --------------------------------------------------------------------- > > From tran_fors at yahoo.com Wed Feb 4 15:40:14 2004 From: tran_fors at yahoo.com (Tran Forsythe) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <.24.221.96.25.1075754625.squirrel@phoenixinternet.com> Message-ID: <20040204214014.42071.qmail@web60701.mail.yahoo.com> I'll certainly _try_ to attend... I've been working some pretty funky hours lately though. -Kurt --- doug@phoenixinternet.com wrote: > Please RSVP... > > We'll be having a Phoenix.pm meeting Thursday, > February 5th at 7:00PM. > It will be held at Bowne, which is located at 1500 > N. Central Avenue, > which is on the Southwest corner of Central and > McDowell. The parking > lot is gated, so just press the button on the > intercom, and tell the > receptionist that you are there for the Perl > meeting. Park in the lot > that is straight ahead from the entrance on the > South side of McDowell. > Park in any uncovered, non-reserved space. Proceed > to the main lobby, > which is on the Northeast side of the parking lot. > > I'll be presenting Perl 101. > > -- > > Doug Miles __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free web site building tool. Try it! http://webhosting.yahoo.com/ps/sb/ From scott at illogics.org Wed Feb 4 16:02:54 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 Message-ID: <20040204220254.GE509@illogics.org> On 0, Tran Forsythe wrote: > > > I'll certainly _try_ to attend... I've been working > some pretty funky hours lately though. > -Kurt Likewise. -scott > > --- doug@phoenixinternet.com wrote: > > Please RSVP... > > > > We'll be having a Phoenix.pm meeting Thursday, > > February 5th at 7:00PM. > > It will be held at Bowne, which is located at 1500 > > N. Central Avenue, > > which is on the Southwest corner of Central and > > McDowell. The parking > > lot is gated, so just press the button on the > > intercom, and tell the > > receptionist that you are there for the Perl > > meeting. Park in the lot > > that is straight ahead from the entrance on the > > South side of McDowell. > > Park in any uncovered, non-reserved space. Proceed > > to the main lobby, > > which is on the Northeast side of the parking lot. > > > > I'll be presenting Perl 101. > > > > -- > > > > Doug Miles > > > __________________________________ > Do you Yahoo!? > Yahoo! SiteBuilder - Free web site building tool. Try it! > http://webhosting.yahoo.com/ps/sb/ From johngnub at cox.net Wed Feb 4 23:55:59 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040204220254.GE509@illogics.org> Message-ID: So; the good news is most of are working now? Cool; Job News; !! Looking for a number of UNIX admin types for my company !! Good location off the 101 and frank wright in Scottsdale. Pass on email + resume... Coolness JB On Wednesday, February 4, 2004, at 03:02 PM, Scott Walters wrote: > On 0, Tran Forsythe wrote: >> >> >> I'll certainly _try_ to attend... I've been working >> some pretty funky hours lately though. >> -Kurt > > Likewise. > -scott > >> >> --- doug@phoenixinternet.com wrote: >>> Please RSVP... >>> >>> We'll be having a Phoenix.pm meeting Thursday, >>> February 5th at 7:00PM. >>> It will be held at Bowne, which is located at 1500 >>> N. Central Avenue, >>> which is on the Southwest corner of Central and >>> McDowell. The parking >>> lot is gated, so just press the button on the >>> intercom, and tell the >>> receptionist that you are there for the Perl >>> meeting. Park in the lot >>> that is straight ahead from the entrance on the >>> South side of McDowell. >>> Park in any uncovered, non-reserved space. Proceed >>> to the main lobby, >>> which is on the Northeast side of the parking lot. >>> >>> I'll be presenting Perl 101. >>> >>> -- >>> >>> Doug Miles >> >> >> __________________________________ >> Do you Yahoo!? >> Yahoo! SiteBuilder - Free web site building tool. Try it! >> http://webhosting.yahoo.com/ps/sb/ > From intertwingled at qwest.net Thu Feb 5 00:13:41 2004 From: intertwingled at qwest.net (intertwingled) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: References: Message-ID: <4021DF15.8020703@qwest.net> The all moved to India. johnb wrote: > So; the good news is most of are working now? > Cool; > > Job News; > > !! Looking for a number of UNIX admin types for my company !! Good > location off the 101 and frank wright in Scottsdale. > Pass on email + resume... > > Coolness JB > > On Wednesday, February 4, 2004, at 03:02 PM, Scott Walters wrote: > >> On 0, Tran Forsythe wrote: >> >>> >>> >>> I'll certainly _try_ to attend... I've been working >>> some pretty funky hours lately though. >>> -Kurt >> >> >> Likewise. >> -scott >> >>> >>> --- doug@phoenixinternet.com wrote: >>> >>>> Please RSVP... >>>> >>>> We'll be having a Phoenix.pm meeting Thursday, >>>> February 5th at 7:00PM. >>>> It will be held at Bowne, which is located at 1500 >>>> N. Central Avenue, >>>> which is on the Southwest corner of Central and >>>> McDowell. The parking >>>> lot is gated, so just press the button on the >>>> intercom, and tell the >>>> receptionist that you are there for the Perl >>>> meeting. Park in the lot >>>> that is straight ahead from the entrance on the >>>> South side of McDowell. >>>> Park in any uncovered, non-reserved space. Proceed >>>> to the main lobby, >>>> which is on the Northeast side of the parking lot. >>>> >>>> I'll be presenting Perl 101. >>>> >>>> -- >>>> >>>> Doug Miles >>> >>> >>> >>> __________________________________ >>> Do you Yahoo!? >>> Yahoo! SiteBuilder - Free web site building tool. Try it! >>> http://webhosting.yahoo.com/ps/sb/ >> >> > > > From tran_fors at yahoo.com Thu Feb 5 17:10:07 2004 From: tran_fors at yahoo.com (Tran Forsythe) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <4021DF15.8020703@qwest.net> Message-ID: <20040205231007.80577.qmail@web60702.mail.yahoo.com> --- intertwingled wrote: > The all moved to India. And boy, is that commute a killer... (no, I'm not serious) > johnb wrote: > > > So; the good news is most of are working now? > > Cool; > > > > Job News; > > > > !! Looking for a number of UNIX admin types for my > company !! Good > > location off the 101 and frank wright in > Scottsdale. > > Pass on email + resume... > > > > Coolness JB > > > > On Wednesday, February 4, 2004, at 03:02 PM, Scott > Walters wrote: > > > >> On 0, Tran Forsythe wrote: > >> > >>> > >>> > >>> I'll certainly _try_ to attend... I've been > working > >>> some pretty funky hours lately though. > >>> -Kurt > >> > >> > >> Likewise. > >> -scott > >> > >>> > >>> --- doug@phoenixinternet.com wrote: > >>> > >>>> Please RSVP... > >>>> > >>>> We'll be having a Phoenix.pm meeting Thursday, > >>>> February 5th at 7:00PM. > >>>> It will be held at Bowne, which is located at > 1500 > >>>> N. Central Avenue, > >>>> which is on the Southwest corner of Central and > >>>> McDowell. The parking > >>>> lot is gated, so just press the button on the > >>>> intercom, and tell the > >>>> receptionist that you are there for the Perl > >>>> meeting. Park in the lot > >>>> that is straight ahead from the entrance on the > >>>> South side of McDowell. > >>>> Park in any uncovered, non-reserved space. > Proceed > >>>> to the main lobby, > >>>> which is on the Northeast side of the parking > lot. > >>>> > >>>> I'll be presenting Perl 101. > >>>> > >>>> -- > >>>> > >>>> Doug Miles > >>> > >>> > >>> > >>> __________________________________ > >>> Do you Yahoo!? > >>> Yahoo! SiteBuilder - Free web site building > tool. Try it! > >>> http://webhosting.yahoo.com/ps/sb/ > >> > >> > > > > > > > > __________________________________ Do you Yahoo!? Yahoo! Finance: Get your refund fast by filing online. http://taxes.yahoo.com/filing.html From Eden.Li at asu.edu Thu Feb 5 17:39:56 2004 From: Eden.Li at asu.edu (Eden Li) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040205231007.80577.qmail@web60702.mail.yahoo.com> Message-ID: They referring to our jobs, right? --- intertwingled wrote: > They all moved to India. From benjamin.trussell at asu.edu Thu Feb 5 18:00:19 2004 From: benjamin.trussell at asu.edu (Ben Trussell) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040205231007.80577.qmail@web60702.mail.yahoo.com> References: <20040205231007.80577.qmail@web60702.mail.yahoo.com> Message-ID: <1076025619.12145.50.camel@greywolf.pp.asu.edu> On Thu, 2004-02-05 at 16:10, Tran Forsythe wrote: > --- intertwingled wrote: > > The all moved to India. > > And boy, is that commute a killer... (no, I'm not > serious) > 25-30 hours each way (with 2 stops), and $1200-$1300 for the air fair, totaling at least $62,400 for a year of weekend flights (not that there are actually enough hours in a weekend to come home then go back...). Oh boy... telecommuting anyone? > > johnb wrote: > > > > > So; the good news is most of are working now? > > > Cool; > > > > > > Job News; > > > > > > !! Looking for a number of UNIX admin types for my > > company !! Good > > > location off the 101 and frank wright in > > Scottsdale. > > > Pass on email + resume... > > > > > > Coolness JB > > > > > > On Wednesday, February 4, 2004, at 03:02 PM, Scott > > Walters wrote: > > > > > >> On 0, Tran Forsythe wrote: > > >> > > >>> > > >>> > > >>> I'll certainly _try_ to attend... I've been > > working > > >>> some pretty funky hours lately though. > > >>> -Kurt > > >> > > >> > > >> Likewise. > > >> -scott > > >> > > >>> > > >>> --- doug@phoenixinternet.com wrote: > > >>> > > >>>> Please RSVP... > > >>>> > > >>>> We'll be having a Phoenix.pm meeting Thursday, > > >>>> February 5th at 7:00PM. > > >>>> It will be held at Bowne, which is located at > > 1500 > > >>>> N. Central Avenue, > > >>>> which is on the Southwest corner of Central and > > >>>> McDowell. The parking > > >>>> lot is gated, so just press the button on the > > >>>> intercom, and tell the > > >>>> receptionist that you are there for the Perl > > >>>> meeting. Park in the lot > > >>>> that is straight ahead from the entrance on the > > >>>> South side of McDowell. > > >>>> Park in any uncovered, non-reserved space. > > Proceed > > >>>> to the main lobby, > > >>>> which is on the Northeast side of the parking > > lot. > > >>>> > > >>>> I'll be presenting Perl 101. > > >>>> > > >>>> -- > > >>>> > > >>>> Doug Miles > > >>> > > >>> > > >>> > > >>> __________________________________ > > >>> Do you Yahoo!? > > >>> Yahoo! SiteBuilder - Free web site building > > tool. Try it! > > >>> http://webhosting.yahoo.com/ps/sb/ > > >> > > >> > > > > > > > > > > > > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Finance: Get your refund fast by filing online. > http://taxes.yahoo.com/filing.html -- ---------------------------------------- Benjamin Trussell Arizona State University Hugh Downs School of Human Communication Office: STA 421 Phone: 965-6828 Email: benjamin.trussell@asu.edu ---------------------------------------- From scott at illogics.org Thu Feb 5 20:43:00 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 Message-ID: <20040206024300.GJ509@illogics.org> Sorry I didn't make it - overslept, yet again =( -scott On 0, Tran Forsythe wrote: > > > --- intertwingled wrote: > > The all moved to India. > > And boy, is that commute a killer... (no, I'm not > serious) > > > johnb wrote: > > > > > So; the good news is most of are working now? > > > Cool; > > > > > > Job News; > > > > > > !! Looking for a number of UNIX admin types for my > > company !! Good > > > location off the 101 and frank wright in > > Scottsdale. > > > Pass on email + resume... > > > > > > Coolness JB > > > > > > On Wednesday, February 4, 2004, at 03:02 PM, Scott > > Walters wrote: > > > > > >> On 0, Tran Forsythe wrote: > > >> > > >>> > > >>> > > >>> I'll certainly _try_ to attend... I've been > > working > > >>> some pretty funky hours lately though. > > >>> -Kurt > > >> > > >> > > >> Likewise. > > >> -scott > > >> > > >>> > > >>> --- doug@phoenixinternet.com wrote: > > >>> > > >>>> Please RSVP... > > >>>> > > >>>> We'll be having a Phoenix.pm meeting Thursday, > > >>>> February 5th at 7:00PM. > > >>>> It will be held at Bowne, which is located at > > 1500 > > >>>> N. Central Avenue, > > >>>> which is on the Southwest corner of Central and > > >>>> McDowell. The parking > > >>>> lot is gated, so just press the button on the > > >>>> intercom, and tell the > > >>>> receptionist that you are there for the Perl > > >>>> meeting. Park in the lot > > >>>> that is straight ahead from the entrance on the > > >>>> South side of McDowell. > > >>>> Park in any uncovered, non-reserved space. > > Proceed > > >>>> to the main lobby, > > >>>> which is on the Northeast side of the parking > > lot. > > >>>> > > >>>> I'll be presenting Perl 101. > > >>>> > > >>>> -- > > >>>> > > >>>> Doug Miles > > >>> > > >>> > > >>> > > >>> __________________________________ > > >>> Do you Yahoo!? > > >>> Yahoo! SiteBuilder - Free web site building > > tool. Try it! > > >>> http://webhosting.yahoo.com/ps/sb/ > > >> > > >> > > > > > > > > > > > > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Finance: Get your refund fast by filing online. > http://taxes.yahoo.com/filing.html From scott at illogics.org Thu Feb 5 21:15:50 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? Message-ID: <20040206031550.GK509@illogics.org> Hi folks, I need to pick one windowing toolkit for use on Mac, Wintel, and Unicecesez. Doug, a while back did a lovely presentation on wxWindows, most of which I've forgotten, and I lost my handout. Doug, can do you have a link to that handout? Or a copy? I'd like to put it on the web, too. But Mac people tell me that the MacOSX wxWindows does *not* work well, and it failed to even compile for a friend when I was going to have him do more specific testing. Perhaps it is still rapidly evolving? Or has it leveled off? Tk is the most popular, and probably the most stable, but Doug has been frustrated by it and bitten by bugs, and it takes information encoded in strings rather than some sort of enum or symbolic constant, making the interface error prone and klunky. Gtk is really popular, and Glade sounds nice, though I haven't been able to get it to compile for me on NetBSD. It is reasonably well ported, though it should be a lot more portable. The Gtk bindings for Perl just leave me scratching my head - they're documentation free, or else 100% automatically generated, completely unhelpful, method signature listings. Personal experience with Gtk at all? There are some tutorials care of Google and I'm going to play with it, of course. X11::Motif is pretty nifty but out of date and Windows and Mac people would have to install a lot of stuff to get it to fly. And of course there is raw X11::Protocol =) SDL and SDL_perl is another option for simple UI stuf and easy access to GL, but again, the Perl bindings seem to be not-quite-there. I built and installed and it only comes back with errors on the sample programs. Someone else who installed it on Linux said they had to find a binary distribution but it did work. So, I'm very open at this point. I'll settle on something eventually, but early input might keep me from going off in a bad direction or keep me from missing a good one =) Any insights, comments, thoughts, or suggestions are most welcome. Thanks, -scott From intertwingled at qwest.net Thu Feb 5 21:21:06 2004 From: intertwingled at qwest.net (intertwingled) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040206024300.GJ509@illogics.org> References: <20040206024300.GJ509@illogics.org> Message-ID: <40230822.6000806@qwest.net> Provigil is the answer! =) Scott Walters wrote: >Sorry I didn't make it - overslept, yet again =( > >-scott > >On 0, Tran Forsythe wrote: > > >>--- intertwingled wrote: >> >> >>>The all moved to India. >>> >>> >>And boy, is that commute a killer... (no, I'm not >>serious) >> >> >> >>>johnb wrote: >>> >>> >>> >>>>So; the good news is most of are working now? >>>>Cool; >>>> >>>>Job News; >>>> >>>>!! Looking for a number of UNIX admin types for my >>>> >>>> >>>company !! Good >>> >>> >>>>location off the 101 and frank wright in >>>> >>>> >>>Scottsdale. >>> >>> >>>>Pass on email + resume... >>>> >>>>Coolness JB >>>> >>>>On Wednesday, February 4, 2004, at 03:02 PM, Scott >>>> >>>> >>>Walters wrote: >>> >>> >>>>>On 0, Tran Forsythe wrote: >>>>> >>>>> >>>>> >>>>>>I'll certainly _try_ to attend... I've been >>>>>> >>>>>> >>>working >>> >>> >>>>>>some pretty funky hours lately though. >>>>>>-Kurt >>>>>> >>>>>> >>>>>Likewise. >>>>>-scott >>>>> >>>>> >>>>> >>>>>>--- doug@phoenixinternet.com wrote: >>>>>> >>>>>> >>>>>> >>>>>>>Please RSVP... >>>>>>> >>>>>>>We'll be having a Phoenix.pm meeting Thursday, >>>>>>>February 5th at 7:00PM. >>>>>>>It will be held at Bowne, which is located at >>>>>>> >>>>>>> >>>1500 >>> >>> >>>>>>>N. Central Avenue, >>>>>>>which is on the Southwest corner of Central and >>>>>>>McDowell. The parking >>>>>>>lot is gated, so just press the button on the >>>>>>>intercom, and tell the >>>>>>>receptionist that you are there for the Perl >>>>>>>meeting. Park in the lot >>>>>>>that is straight ahead from the entrance on the >>>>>>>South side of McDowell. >>>>>>>Park in any uncovered, non-reserved space. >>>>>>> >>>>>>> >>>Proceed >>> >>> >>>>>>>to the main lobby, >>>>>>>which is on the Northeast side of the parking >>>>>>> >>>>>>> >>>lot. >>> >>> >>>>>>>I'll be presenting Perl 101. >>>>>>> >>>>>>>-- >>>>>>> >>>>>>>Doug Miles >>>>>>> >>>>>>> >>>>>> >>>>>>__________________________________ >>>>>>Do you Yahoo!? >>>>>>Yahoo! SiteBuilder - Free web site building >>>>>> >>>>>> >>>tool. Try it! >>> >>> >>>>>>http://webhosting.yahoo.com/ps/sb/ >>>>>> >>>>>> >>>>> >>>>> >>>> >>>> >>>> >>> >>> >>__________________________________ >>Do you Yahoo!? >>Yahoo! Finance: Get your refund fast by filing online. >>http://taxes.yahoo.com/filing.html >> >> > > > > From intertwingled at qwest.net Thu Feb 5 21:22:11 2004 From: intertwingled at qwest.net (intertwingled) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? In-Reply-To: <20040206031550.GK509@illogics.org> References: <20040206031550.GK509@illogics.org> Message-ID: <40230863.1000808@qwest.net> perl/tk ??? Scott Walters wrote: >Hi folks, > >I need to pick one windowing toolkit for use on Mac, Wintel, and Unicecesez. > >Doug, a while back did a lovely presentation on wxWindows, most of which >I've forgotten, and I lost my handout. Doug, can do you have a link to that >handout? Or a copy? I'd like to put it on the web, too. > >But Mac people tell me that the MacOSX wxWindows does *not* work well, and >it failed to even compile for a friend when I was going to have him do more >specific testing. > >Perhaps it is still rapidly evolving? Or has it leveled off? > >Tk is the most popular, and probably the most stable, but Doug has been >frustrated by it and bitten by bugs, and it takes information encoded in >strings rather than some sort of enum or symbolic constant, making the >interface error prone and klunky. > >Gtk is really popular, and Glade sounds nice, though I haven't been able to get >it to compile for me on NetBSD. It is reasonably well ported, though it should >be a lot more portable. The Gtk bindings for Perl just leave me scratching >my head - they're documentation free, or else 100% automatically generated, >completely unhelpful, method signature listings. Personal experience with Gtk at >all? There are some tutorials care of Google and I'm going to play with it, >of course. > >X11::Motif is pretty nifty but out of date and Windows and Mac people >would have to install a lot of stuff to get it to fly. And of course there >is raw X11::Protocol =) > >SDL and SDL_perl is another option for simple UI stuf and easy access to GL, >but again, the Perl bindings seem to be not-quite-there. I built and installed >and it only comes back with errors on the sample programs. Someone else who >installed it on Linux said they had to find a binary distribution but it >did work. > >So, I'm very open at this point. I'll settle on something eventually, but early >input might keep me from going off in a bad direction or keep me from missing >a good one =) Any insights, comments, thoughts, or suggestions are most welcome. > >Thanks, >-scott > > > > > From johngnub at cox.net Fri Feb 6 08:05:38 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040205231007.80577.qmail@web60702.mail.yahoo.com> Message-ID: <8A9E1B16-58AD-11D8-848C-000A9585B970@cox.net> Not when: The send people to warn up the chair; then the regional people use a anon yahoo email account to get the info/tasks/ from the one person in the long commute location; And I would not put this to word unless I was an eye witness to the event. Oh the India connection does not have any AS400 nor OS390 skills. No kidding. JB PS: UNIX and OS390, we will be looking for OS390 in the near future, 90 days maybe ? JB On Thursday, February 5, 2004, at 04:10 PM, Tran Forsythe wrote: > > --- intertwingled wrote: >> The all moved to India. > > And boy, is that commute a killer... (no, I'm not > serious) > >> johnb wrote: >> >>> So; the good news is most of are working now? >>> Cool; >>> >>> Job News; >>> >>> !! Looking for a number of UNIX admin types for my >> company !! Good >>> location off the 101 and frank wright in >> Scottsdale. >>> Pass on email + resume... >>> >>> Coolness JB >>> >>> On Wednesday, February 4, 2004, at 03:02 PM, Scott >> Walters wrote: >>> >>>> On 0, Tran Forsythe wrote: >>>> >>>>> >>>>> >>>>> I'll certainly _try_ to attend... I've been >> working >>>>> some pretty funky hours lately though. >>>>> -Kurt >>>> >>>> >>>> Likewise. >>>> -scott >>>> >>>>> >>>>> --- doug@phoenixinternet.com wrote: >>>>> >>>>>> Please RSVP... >>>>>> >>>>>> We'll be having a Phoenix.pm meeting Thursday, >>>>>> February 5th at 7:00PM. >>>>>> It will be held at Bowne, which is located at >> 1500 >>>>>> N. Central Avenue, >>>>>> which is on the Southwest corner of Central and >>>>>> McDowell. The parking >>>>>> lot is gated, so just press the button on the >>>>>> intercom, and tell the >>>>>> receptionist that you are there for the Perl >>>>>> meeting. Park in the lot >>>>>> that is straight ahead from the entrance on the >>>>>> South side of McDowell. >>>>>> Park in any uncovered, non-reserved space. >> Proceed >>>>>> to the main lobby, >>>>>> which is on the Northeast side of the parking >> lot. >>>>>> >>>>>> I'll be presenting Perl 101. >>>>>> >>>>>> -- >>>>>> >>>>>> Doug Miles >>>>> >>>>> >>>>> >>>>> __________________________________ >>>>> Do you Yahoo!? >>>>> Yahoo! SiteBuilder - Free web site building >> tool. Try it! >>>>> http://webhosting.yahoo.com/ps/sb/ >>>> >>>> >>> >>> >>> >> >> > > > __________________________________ > Do you Yahoo!? > Yahoo! Finance: Get your refund fast by filing online. > http://taxes.yahoo.com/filing.html > From johngnub at cox.net Fri Feb 6 08:05:54 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: Message-ID: <94396F7C-58AD-11D8-848C-000A9585B970@cox.net> Both.... On Thursday, February 5, 2004, at 04:39 PM, Eden Li wrote: > They referring to our jobs, right? > > --- intertwingled wrote: >> They all moved to India. > From johngnub at cox.net Fri Feb 6 08:08:13 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Meeting 02/05/2004 In-Reply-To: <20040206024300.GJ509@illogics.org> Message-ID: Post noon is over sleeping ? Hmmm... $foo =~ s/am/pm/ Oh forgot the ';' need more sleep.... $foo =~ s/am/pm/; $state =~ s/active/Zzzzzz/; JB On Thursday, February 5, 2004, at 07:43 PM, Scott Walters wrote: > Sorry I didn't make it - overslept, yet again =( > > -scott > > On 0, Tran Forsythe wrote: >> >> >> --- intertwingled wrote: >>> The all moved to India. >> >> And boy, is that commute a killer... (no, I'm not >> serious) >> >>> johnb wrote: >>> >>>> So; the good news is most of are working now? >>>> Cool; >>>> >>>> Job News; >>>> >>>> !! Looking for a number of UNIX admin types for my >>> company !! Good >>>> location off the 101 and frank wright in >>> Scottsdale. >>>> Pass on email + resume... >>>> >>>> Coolness JB >>>> >>>> On Wednesday, February 4, 2004, at 03:02 PM, Scott >>> Walters wrote: >>>> >>>>> On 0, Tran Forsythe wrote: >>>>> >>>>>> >>>>>> >>>>>> I'll certainly _try_ to attend... I've been >>> working >>>>>> some pretty funky hours lately though. >>>>>> -Kurt >>>>> >>>>> >>>>> Likewise. >>>>> -scott >>>>> >>>>>> >>>>>> --- doug@phoenixinternet.com wrote: >>>>>> >>>>>>> Please RSVP... >>>>>>> >>>>>>> We'll be having a Phoenix.pm meeting Thursday, >>>>>>> February 5th at 7:00PM. >>>>>>> It will be held at Bowne, which is located at >>> 1500 >>>>>>> N. Central Avenue, >>>>>>> which is on the Southwest corner of Central and >>>>>>> McDowell. The parking >>>>>>> lot is gated, so just press the button on the >>>>>>> intercom, and tell the >>>>>>> receptionist that you are there for the Perl >>>>>>> meeting. Park in the lot >>>>>>> that is straight ahead from the entrance on the >>>>>>> South side of McDowell. >>>>>>> Park in any uncovered, non-reserved space. >>> Proceed >>>>>>> to the main lobby, >>>>>>> which is on the Northeast side of the parking >>> lot. >>>>>>> >>>>>>> I'll be presenting Perl 101. >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> Doug Miles >>>>>> >>>>>> >>>>>> >>>>>> __________________________________ >>>>>> Do you Yahoo!? >>>>>> Yahoo! SiteBuilder - Free web site building >>> tool. Try it! >>>>>> http://webhosting.yahoo.com/ps/sb/ >>>>> >>>>> >>>> >>>> >>>> >>> >>> >> >> >> __________________________________ >> Do you Yahoo!? >> Yahoo! Finance: Get your refund fast by filing online. >> http://taxes.yahoo.com/filing.html > From johngnub at cox.net Fri Feb 6 08:09:48 2004 From: johngnub at cox.net (johnb) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? In-Reply-To: <20040206031550.GK509@illogics.org> Message-ID: <1FB5B560-58AE-11D8-848C-000A9585B970@cox.net> X11 on mac is cake install; Works good; Can you pass over a Motif function call, like open a window, I can test for basic functions; JB On Thursday, February 5, 2004, at 08:15 PM, Scott Walters wrote: > Hi folks, > > I need to pick one windowing toolkit for use on Mac, Wintel, and > Unicecesez. > > Doug, a while back did a lovely presentation on wxWindows, most of > which > I've forgotten, and I lost my handout. Doug, can do you have a link to > that > handout? Or a copy? I'd like to put it on the web, too. > > But Mac people tell me that the MacOSX wxWindows does *not* work well, > and > it failed to even compile for a friend when I was going to have him do > more > specific testing. > > Perhaps it is still rapidly evolving? Or has it leveled off? > > Tk is the most popular, and probably the most stable, but Doug has been > frustrated by it and bitten by bugs, and it takes information encoded > in > strings rather than some sort of enum or symbolic constant, making the > interface error prone and klunky. > > Gtk is really popular, and Glade sounds nice, though I haven't been > able to get > it to compile for me on NetBSD. It is reasonably well ported, though > it should > be a lot more portable. The Gtk bindings for Perl just leave me > scratching > my head - they're documentation free, or else 100% automatically > generated, > completely unhelpful, method signature listings. Personal experience > with Gtk at > all? There are some tutorials care of Google and I'm going to play > with it, > of course. > > X11::Motif is pretty nifty but out of date and Windows and Mac people > would have to install a lot of stuff to get it to fly. And of course > there > is raw X11::Protocol =) > > SDL and SDL_perl is another option for simple UI stuf and easy access > to GL, > but again, the Perl bindings seem to be not-quite-there. I built and > installed > and it only comes back with errors on the sample programs. Someone > else who > installed it on Linux said they had to find a binary distribution but > it > did work. > > So, I'm very open at this point. I'll settle on something eventually, > but early > input might keep me from going off in a bad direction or keep me from > missing > a good one =) Any insights, comments, thoughts, or suggestions are > most welcome. > > Thanks, > -scott > From scott at illogics.org Fri Feb 6 08:38:08 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? Message-ID: <20040206143808.GM509@illogics.org> Thanks JB, I might do that, eventually. That route would require Windows people to install Cygwin (the other X11 servers for Windows don't have a LessTif/Motif bundle available). That might be too strange for the most common case. Also X11::Motif is badly out of date. I'd have to update it. Bleah. I can offer you a non-paying job... -scott On 0, johnb wrote: > > X11 on mac is cake install; Works good; > > Can you pass over a Motif function call, like open a window, I can test > for basic functions; > > JB > > On Thursday, February 5, 2004, at 08:15 PM, Scott Walters wrote: > > > Hi folks, > > > > I need to pick one windowing toolkit for use on Mac, Wintel, and > > Unicecesez. > > > > Doug, a while back did a lovely presentation on wxWindows, most of > > which > > I've forgotten, and I lost my handout. Doug, can do you have a link to > > that > > handout? Or a copy? I'd like to put it on the web, too. > > > > But Mac people tell me that the MacOSX wxWindows does *not* work well, > > and > > it failed to even compile for a friend when I was going to have him do > > more > > specific testing. > > > > Perhaps it is still rapidly evolving? Or has it leveled off? > > > > Tk is the most popular, and probably the most stable, but Doug has been > > frustrated by it and bitten by bugs, and it takes information encoded > > in > > strings rather than some sort of enum or symbolic constant, making the > > interface error prone and klunky. > > > > Gtk is really popular, and Glade sounds nice, though I haven't been > > able to get > > it to compile for me on NetBSD. It is reasonably well ported, though > > it should > > be a lot more portable. The Gtk bindings for Perl just leave me > > scratching > > my head - they're documentation free, or else 100% automatically > > generated, > > completely unhelpful, method signature listings. Personal experience > > with Gtk at > > all? There are some tutorials care of Google and I'm going to play > > with it, > > of course. > > > > X11::Motif is pretty nifty but out of date and Windows and Mac people > > would have to install a lot of stuff to get it to fly. And of course > > there > > is raw X11::Protocol =) > > > > SDL and SDL_perl is another option for simple UI stuf and easy access > > to GL, > > but again, the Perl bindings seem to be not-quite-there. I built and > > installed > > and it only comes back with errors on the sample programs. Someone > > else who > > installed it on Linux said they had to find a binary distribution but > > it > > did work. > > > > So, I'm very open at this point. I'll settle on something eventually, > > but early > > input might keep me from going off in a bad direction or keep me from > > missing > > a good one =) Any insights, comments, thoughts, or suggestions are > > most welcome. > > > > Thanks, > > -scott > > > From friedman at highwire.stanford.edu Fri Feb 6 16:34:47 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? In-Reply-To: <20040206031550.GK509@illogics.org> References: <20040206031550.GK509@illogics.org> Message-ID: Scott, I don't have any opinions on the matter, since I've never written anything with a local GUI, but I have Mac OSX 10.3 (Panther) and would be willing to install and test things for you, if you like. -- Mike On Feb 5, 2004, at 8:15 PM, Scott Walters wrote: > Hi folks, > > I need to pick one windowing toolkit for use on Mac, Wintel, and > Unicecesez. > > Doug, a while back did a lovely presentation on wxWindows, most of > which > I've forgotten, and I lost my handout. Doug, can do you have a link to > that > handout? Or a copy? I'd like to put it on the web, too. > > But Mac people tell me that the MacOSX wxWindows does *not* work well, > and > it failed to even compile for a friend when I was going to have him do > more > specific testing. > > Perhaps it is still rapidly evolving? Or has it leveled off? > > Tk is the most popular, and probably the most stable, but Doug has been > frustrated by it and bitten by bugs, and it takes information encoded > in > strings rather than some sort of enum or symbolic constant, making the > interface error prone and klunky. > > Gtk is really popular, and Glade sounds nice, though I haven't been > able to get > it to compile for me on NetBSD. It is reasonably well ported, though > it should > be a lot more portable. The Gtk bindings for Perl just leave me > scratching > my head - they're documentation free, or else 100% automatically > generated, > completely unhelpful, method signature listings. Personal experience > with Gtk at > all? There are some tutorials care of Google and I'm going to play > with it, > of course. > > X11::Motif is pretty nifty but out of date and Windows and Mac people > would have to install a lot of stuff to get it to fly. And of course > there > is raw X11::Protocol =) > > SDL and SDL_perl is another option for simple UI stuf and easy access > to GL, > but again, the Perl bindings seem to be not-quite-there. I built and > installed > and it only comes back with errors on the sample programs. Someone > else who > installed it on Linux said they had to find a binary distribution but > it > did work. > > So, I'm very open at this point. I'll settle on something eventually, > but early > input might keep me from going off in a bad direction or keep me from > missing > a good one =) Any insights, comments, thoughts, or suggestions are > most welcome. > > Thanks, > -scott > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From doug at phoenixinternet.com Mon Feb 9 11:11:47 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how do I use it? In-Reply-To: <20040206031550.GK509@illogics.org> References: <20040206031550.GK509@illogics.org> Message-ID: <4027BF53.6090302@phoenixinternet.com> Sorry this is so late. I've been having mail issues. Scott Walters wrote: > Hi folks, > > I need to pick one windowing toolkit for use on Mac, Wintel, and Unicecesez. > > Doug, a while back did a lovely presentation on wxWindows, most of which > I've forgotten, and I lost my handout. Doug, can do you have a link to that > handout? Or a copy? I'd like to put it on the web, too. Can you refresh my memory? I only remember a program listing. > But Mac people tell me that the MacOSX wxWindows does *not* work well, and > it failed to even compile for a friend when I was going to have him do more > specific testing. Not sure about this. I got it running on OSX several months ago, but did run into some issues. > Perhaps it is still rapidly evolving? Or has it leveled off? > > Tk is the most popular, and probably the most stable, but Doug has been > frustrated by it and bitten by bugs, and it takes information encoded in > strings rather than some sort of enum or symbolic constant, making the > interface error prone and klunky. My main beef with Tk (for the particular project I was working on at the time) is that the widgets aren't native. The widgets on windows mostly look right, but not quite. I needed something that looked exactly right on Windows/Linux. > Gtk is really popular, and Glade sounds nice, though I haven't been able to get > it to compile for me on NetBSD. It is reasonably well ported, though it should > be a lot more portable. The Gtk bindings for Perl just leave me scratching > my head - they're documentation free, or else 100% automatically generated, > completely unhelpful, method signature listings. Personal experience with Gtk at > all? There are some tutorials care of Google and I'm going to play with it, > of course. > > X11::Motif is pretty nifty but out of date and Windows and Mac people > would have to install a lot of stuff to get it to fly. And of course there > is raw X11::Protocol =) > > SDL and SDL_perl is another option for simple UI stuf and easy access to GL, > but again, the Perl bindings seem to be not-quite-there. I built and installed > and it only comes back with errors on the sample programs. Someone else who > installed it on Linux said they had to find a binary distribution but it > did work. I've run into the same issue here. Several of the sample programs flat out don't work. > So, I'm very open at this point. I'll settle on something eventually, but early > input might keep me from going off in a bad direction or keep me from missing > a good one =) Any insights, comments, thoughts, or suggestions are most welcome. Bob did a little checking into another toolkit. The name escapes me right now. From scott at illogics.org Mon Feb 9 13:05:47 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how Message-ID: <20040209190547.GC10283@illogics.org> On 0, "Douglas E. Miles" wrote: > > Sorry this is so late. I've been having mail issues. Want a @slowass.net account? =) > > Scott Walters wrote: > > Hi folks, > > > > I need to pick one windowing toolkit for use on Mac, Wintel, and Unicecesez. > > > > Doug, a while back did a lovely presentation on wxWindows, most of which > > I've forgotten, and I lost my handout. Doug, can do you have a link to that > > handout? Or a copy? I'd like to put it on the web, too. > > Can you refresh my memory? I only remember a program listing. Yes, the listing was what I was talking about. Sorry. Has anyone ever done a hand-out that *wasn't* a listing at Phoenix.PM? > > But Mac people tell me that the MacOSX wxWindows does *not* work well, and > > it failed to even compile for a friend when I was going to have him do more > > specific testing. > > Not sure about this. I got it running on OSX several months ago, but > did run into some issues. > > > Perhaps it is still rapidly evolving? Or has it leveled off? > > > > Tk is the most popular, and probably the most stable, but Doug has been > > frustrated by it and bitten by bugs, and it takes information encoded in > > strings rather than some sort of enum or symbolic constant, making the > > interface error prone and klunky. > > My main beef with Tk (for the particular project I was working on at the > time) is that the widgets aren't native. The widgets on windows mostly > look right, but not quite. I needed something that looked exactly right > on Windows/Linux. Let's not talk about the state of theming on Linux ;) Or perhpas I'm the only one with Motif widget set based programs, Qt applications, Gtk applications, and probably others... Someone suggested Prima, and I'm really impressed with it. Compiled with no errors, the examples work, the interface is clean (very important) and it does transparent windows/shapes! wx isn't out of the running yet, nor is Gtk. I've been busy filing bug reports and if I find that my platform suddenly starts working I'll be really impressed. Right now, it is between Win32::GDI, Prima, Tk, wxWindows (if I can make it go), and Gtk (same). Re: Win32::GDI, I'm trying to hack the Cygwin port of the libwin32 module (Win32::*) to work on Linux/BSD and link against winelib =) That's kind of a neat hack if it goes but I don't know if it is really that pragmatic. It has the advantage of using the native API on the most common platform. Thanks, -scott > > > Gtk is really popular, and Glade sounds nice, though I haven't been able to get > > it to compile for me on NetBSD. It is reasonably well ported, though it should > > be a lot more portable. The Gtk bindings for Perl just leave me scratching > > my head - they're documentation free, or else 100% automatically generated, > > completely unhelpful, method signature listings. Personal experience with Gtk at > > all? There are some tutorials care of Google and I'm going to play with it, > > of course. > > > > X11::Motif is pretty nifty but out of date and Windows and Mac people > > would have to install a lot of stuff to get it to fly. And of course there > > is raw X11::Protocol =) > > > > SDL and SDL_perl is another option for simple UI stuf and easy access to GL, > > but again, the Perl bindings seem to be not-quite-there. I built and installed > > and it only comes back with errors on the sample programs. Someone else who > > installed it on Linux said they had to find a binary distribution but it > > did work. > > I've run into the same issue here. Several of the sample programs flat > out don't work. > > > So, I'm very open at this point. I'll settle on something eventually, but early > > input might keep me from going off in a bad direction or keep me from missing > > a good one =) Any insights, comments, thoughts, or suggestions are most welcome. > > Bob did a little checking into another toolkit. The name escapes me > right now. > > From aj at exiledplanet.org Tue Feb 10 01:02:50 2004 From: aj at exiledplanet.org (Andrew Johnson) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: survey says: what's the best GUI toolkit, and how In-Reply-To: <20040209190547.GC10283@illogics.org> References: <20040209190547.GC10283@illogics.org> Message-ID: <4028821A.9020500@exiledplanet.org> Scott Walters wrote: > [snip] > >>Scott Walters wrote: >> >> >>>Hi folks, >>> >>>I need to pick one windowing toolkit for use on Mac, Wintel, and Unicecesez. >>> >>>Doug, a while back did a lovely presentation on wxWindows, most of which >>>I've forgotten, and I lost my handout. Doug, can do you have a link to that >>> >>> >Let's not talk about the state of theming on Linux ;) > >Or perhpas I'm the only one with Motif widget set based programs, Qt applications, >Gtk applications, and probably others... > > Well, since you brought up Qt, have you looked at PerlQt? (http://perlqt.sourceforge.net/) From doug at phoenixinternet.com Wed Feb 18 18:43:56 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Inheriting from DateTime Message-ID: <403406CC.7070703@phoenixinternet.com> Hi All! I'm trying to create a sub-class of DateTime. I want to pass a few new attributes in the constructor. DateTime validates the parameters passed to new(), so I can't just pass my new()s @_. I have a few ideas about how to handle this, but none seem particularly elegant. Any thoughts on how to approach this? Here is that code that doesn't work, just to give you an idea: #!/usr/bin/perl package EventCalendar::Event; use DateTime; our @ISA = qw(DateTime); sub new { my $package = shift; my $class = ref($package) || $package; my $self = $class->SUPER::new(@_); bless($self, $class); return $self; } # END: new package main; my $event = EventCalendar::Event-> new ( event_name => 'Test', year => 2004, month => 2, day => 1, ); print $event->event_name . "\n"; print $event->day . "\n"; print $event->month . "\n"; print $event->year . "\n"; Here is the output: The following parameter was passed in the call to DateTime::new but was not listed in the validation options: event_name at ./test line 24 Any feedback is appreciated! From doug at phoenixinternet.com Thu Feb 19 15:10:31 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Inheriting from DateTime Message-ID: <40352647.60002@phoenixinternet.com> Scott Walters wrote: > Hi Doug, > > Looks like you're going down a good road right now. Just have to go a little > further. > > >>sub new >>{ >> >> my $package = shift; >> my $class = ref($package) || $package; > > > my %params = @_; > my $event_name = delete $param{event_name}; > > >> # my $self = $class->SUPER::new(@_); > > my $self = $class->SUPER::new(%params); > > >> bless($self, $class); > > > $self->{event_name} = $event_name; # ram it in there forceibly > > >> return $self; >> >>} # END: new > > > That's kind of ugly, between reblessing the object, stripping off unexpected > parameters, and then mashing them into the object. I don't know of a better > way to do this, though. Thanks Scott. That was exactly the approach I was going to take. I agree that its ugly. I was hoping I was missing something obvious. I guess that's what I'll do unless someone else comes up with a better idea. All my inheritance experience involves my own classes, so I've never run into this before. From doug at phoenixinternet.com Thu Feb 19 18:12:41 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: [Fwd: [Fwd: Re: Phoenix.pm: Inheriting from DateTime]] Message-ID: <403550F9.70601@phoenixinternet.com> I'm forwarding this for eden, because majordomo didn't like the "sub" in "Sub new". I turned off this (mis)feature. I should have done this a long time ago. Hopefully we'll have fewer legitimate emails bouncing. We now return to your regularly scheduled email... Hmmm... I think there might be a way for you to turn off warnings for a certain block. It's been such a long time since I touched Perl (oh how I miss'er), but... maybe... sub new { my $package = shift; my $class = ref($package) || $package; { local ($SIG{'__WARN__'}) = sub {}; my $self = $class->SUPER::new(@_); } bless($self, $class); return $self; } Actually, I tested this, so it won't send out that warning. The only problem I see with this is that DateTime->new()'s legitimate warnings would go unheard. Hope this was helpful...... eden Douglas E. Miles wrote: > I'm trying to create a sub-class of DateTime. I want to pass a few new > attributes in the constructor. DateTime validates the parameters passed > to new(), so I can't just pass my new()s @_. I have a few ideas about > how to handle this, but none seem particularly elegant. Any thoughts on > how to approach this? Here is that code that doesn't work, just to give > you an idea: From Eden.Li at asu.edu Thu Feb 19 18:40:54 2004 From: Eden.Li at asu.edu (Eden Li) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Re: Inheriting from DateTime In-Reply-To: <403550F9.70601@phoenixinternet.com> Message-ID: I was wondering where my email went :) On Thu, 19 Feb 2004, Douglas E. Miles wrote: > I'm forwarding this for eden, because majordomo didn't like the "sub" in > "Sub new". I turned off this (mis)feature. I should have done this a > long time ago. Hopefully we'll have fewer legitimate emails bouncing. > We now return to your regularly scheduled email... From doug at phoenixinternet.com Thu Feb 19 18:58:11 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: [Fwd: [Fwd: Re: Phoenix.pm: Inheriting from DateTime]] In-Reply-To: <403550F9.70601@phoenixinternet.com> References: <403550F9.70601@phoenixinternet.com> Message-ID: <40355BA3.5090702@phoenixinternet.com> eden wrote: > I'm forwarding this for eden, because majordomo didn't like the "sub" in > "Sub new". I turned off this (mis)feature. I should have done this a > long time ago. Hopefully we'll have fewer legitimate emails bouncing. > We now return to your regularly scheduled email... > > > Hmmm... I think there might be a way for you to turn off warnings for a > certain block. It's been such a long time since I touched Perl (oh how > I miss'er), but... maybe... > > sub new > { > my $package = shift; > my $class = ref($package) || $package; > > { > local ($SIG{'__WARN__'}) = sub {}; > my $self = $class->SUPER::new(@_); > } > bless($self, $class); > > return $self; > } > > Actually, I tested this, so it won't send out that warning. > > The only problem I see with this is that DateTime->new()'s legitimate > warnings would go unheard. > > Hope this was helpful...... Hmmm... This didn't work for me. According to the documentation for Params::Validate (which DateTime uses), it does a Carp::confess (which is a equivalent to 'die'. Maybe you have a different version of one or more of the modules which gives a warning rather than 'die'ing? I'm not sure. Thanks for the reply. From Eden.Li at asu.edu Thu Feb 19 19:17:24 2004 From: Eden.Li at asu.edu (Eden Li) Date: Thu Aug 5 00:17:15 2004 Subject: [Fwd: [Fwd: Re: Phoenix.pm: Inheriting from DateTime]] In-Reply-To: <40355BA3.5090702@phoenixinternet.com> Message-ID: oh, I figured it was a warning. I tested it as below: #-- { local ($SIG{'__WARN__'}) = sub {}; warn 'meh'; } warn 'bleh'; #-- Which prints out only 'bleh'. Apparently, from my limited research, you can't stop a die() from happening by changing its handler. Therefore, you may ignore this suggestion... :) It's probably not good to turn off warns/dies anyway. It seems DateTime is being a bit too pedantic by complaining about extra parameters it recieves... I guess this is a design policy that the DateTime programmer decided to implement. Ah, I love Perl's apathy towards policy :) Anyway... I'm typing too much. I think the best way is to remove your params before passing them off to DateTime, as you and Scott both mentioned... On Thu, 19 Feb 2004, Douglas E. Miles wrote: > Hmmm... This didn't work for me. According to the documentation for > Params::Validate (which DateTime uses), it does a Carp::confess (which > is a equivalent to 'die'. Maybe you have a different version of one or > more of the modules which gives a warning rather than 'die'ing? I'm not > sure. Thanks for the reply. From doug at phoenixinternet.com Fri Feb 20 11:30:35 2004 From: doug at phoenixinternet.com (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: [Fwd: Re: Phoenix.pm: Inheriting from DateTime] Message-ID: <4036443B.1030807@phoenixinternet.com> I'm forwarding this for Tim Ayers. Majordomo says he's not a member. Who am I to argue with Majordomo? :P Tim I'm guessing you're subscribed under an address other than your reuters.com address. Without further ado, Tim's message: Given that DateTime uses "named parameters" I typically do something like the following sub new { my $self = shift; my $class = ref($self) || $self; my %args = @_; if (exists $args{my_arg_1}) { # do stuff with my_arg_1 delete $args{my_arg_1}; } if (exists $args{my_arg_2}) { # do stuff with my_arg_2 delete $args{my_arg_2}; } return bless $class->SUPER::new(%args), $class; } I like Eden's solution better for its trickery, but this is a more explicit approach. Hope you have a very nice day, :-) tim Douglas E. Miles wrote: > Hi All! > > I'm trying to create a sub-class of DateTime. I want to pass a few new > attributes in the constructor. DateTime validates the parameters passed > to new(), so I can't just pass my new()s @_. I have a few ideas about > how to handle this, but none seem particularly elegant. Any thoughts on > how to approach this? Here is that code that doesn't work, just to give > you an idea: > > #!/usr/bin/perl > > package EventCalendar::Event; > > use DateTime; > > our @ISA = qw(DateTime); > > sub new > { > > my $package = shift; > my $class = ref($package) || $package; > > my $self = $class->SUPER::new(@_); > bless($self, $class); > > return $self; > > } # END: new > > package main; > > my $event = > EventCalendar::Event-> > new > ( > event_name => 'Test', > year => 2004, > month => 2, > day => 1, > ); > > print $event->event_name . "\n"; > print $event->day . "\n"; > print $event->month . "\n"; > print $event->year . "\n"; > > Here is the output: > > The following parameter was passed in the call to DateTime::new but was > not listed in the validation options: event_name > at ./test line 24 > > Any feedback is appreciated! > ----------------------------------------------------------------- Visit our Internet site at http://www.reuters.com Get closer to the financial markets with Reuters Messaging - for more information and to register, visit http://www.reuters.com/messaging Any views expressed in this message are those of the individual sender, except where the sender specifically states them to be the views of Reuters Ltd. From perlguy at earthlink.net Fri Feb 20 18:22:34 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Inheriting from DateTime In-Reply-To: <40352647.60002@phoenixinternet.com> References: <40352647.60002@phoenixinternet.com> Message-ID: <4036A4CA.6010204@earthlink.net> Douglas E. Miles wrote: > Scott Walters wrote: > >> Hi Doug, >> >> Looks like you're going down a good road right now. Just have to go a >> little >> further. >> >> >>> sub new >>> { >>> >>> my $package = shift; >>> my $class = ref($package) || $package; >> >> >> >> my %params = @_; >> my $event_name = delete $param{event_name}; >> >> >>> # my $self = $class->SUPER::new(@_); >> >> >> my $self = $class->SUPER::new(%params); >> >> >>> bless($self, $class); >> >> >> >> $self->{event_name} = $event_name; # ram it in there forceibly >> >> >>> return $self; >>> >>> } # END: new >> >> >> >> That's kind of ugly, between reblessing the object, stripping off >> unexpected >> parameters, and then mashing them into the object. I don't know of a >> better >> way to do this, though. > > > > > Thanks Scott. That was exactly the approach I was going to take. I > agree that its ugly. I was hoping I was missing something obvious. I > guess that's what I'll do unless someone else comes up with a better > idea. All my inheritance experience involves my own classes, so I've > never run into this before. > Since I'm sure the suspense is killing all of you, here's what I ended up with: my @local_attributes = ( qw ( calendar event_name ) ); sub new { my $package = shift; my $class = ref($package) || $package; my %attributes = @_; my %local_attributes; @local_attributes{@local_attributes} = delete(@attributes{@local_attributes}); my $self = $class->SUPER::new(%attributes); bless($self, $class); @{$self}{@local_attributes} = @local_attributes{@local_attributes}; $self->initialize; return $self; } I did it this was, because I know that there will be more attributes added later. Comments? From scott at illogics.org Tue Feb 24 02:00:02 2004 From: scott at illogics.org (scott@illogics.org) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement Message-ID: <200402242042.i1OKgpq4015342@slowass.net> Hi, This is an automated message - this upcoming Thursday, the 30th, is a Perl Mongers night! Pack up your favorite old and new books, your problem code, your clever hacks, pick a new or favorite module from CPAN or your library to mention, if you want to share. If no topic has been announced, this is your chance to present that algorithm or module or technique - it doesn't have to be spectacular - people of all abilities show up and there is plenty of room for novice, intermediate, and expert content. If you don't suggest something, Doug, Kurt and Scott's inventory will be exhausted eventually, and no one wants that. Watch this space for confirmation of the meeting date and announcement of the final topic selection. From friedman at highwire.stanford.edu Tue Feb 24 15:34:05 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement In-Reply-To: <200402242042.i1OKgpq4015342@slowass.net> References: <200402242042.i1OKgpq4015342@slowass.net> Message-ID: <2BCE0F3C-6711-11D8-8446-000A956CAA2C@highwire.stanford.edu> Scott, In case you didn't notice, next week Thursday is March 4th, not the 30th of February by any definition... *grin* So, what software did you use to generate this message? Something cool with Date::* and Mail::Sendmail? -- Mike PS - I believe (Doug, please correct me if I'm wrong), that I'll be talking about Automated Testing for this meeting. It won't take 2 hours unless you have lots of questions, though, so bring any other interesting ideas too. On Feb 24, 2004, at 1:00 AM, scott@illogics.org wrote: > > > Hi, > > This is an automated message - this upcoming Thursday, the 30th, is a > Perl Mongers > night! > > Pack up your favorite old and new books, your problem code, your clever > hacks, pick a new or favorite module from CPAN or your library to > mention, > if you want to share. > > If no topic has been announced, this is your chance to present that > algorithm or module or technique - it doesn't have to be spectacular - > people of all abilities show up and there is plenty of room for novice, > intermediate, and expert content. If you don't suggest something, Doug, > Kurt and Scott's inventory will be exhausted eventually, and no one > wants > that. > > Watch this space for confirmation of the meeting date and announcement > of the > final topic selection. > > > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From friedman at highwire.stanford.edu Tue Feb 24 15:48:46 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement In-Reply-To: <2BCE0F3C-6711-11D8-8446-000A956CAA2C@highwire.stanford.edu> References: <200402242042.i1OKgpq4015342@slowass.net> <2BCE0F3C-6711-11D8-8446-000A956CAA2C@highwire.stanford.edu> Message-ID: <39192CD6-6713-11D8-8446-000A956CAA2C@highwire.stanford.edu> Er, that came out wrong. I mean no disrespect. It was "joke, then actual curious question, because I don't have a good timed mailer." -- Mike On Feb 24, 2004, at 2:34 PM, Michael Friedman wrote: > Scott, > > In case you didn't notice, next week Thursday is March 4th, not the > 30th of February by any definition... *grin* > > So, what software did you use to generate this message? Something cool > with Date::* and Mail::Sendmail? > > -- Mike > > PS - I believe (Doug, please correct me if I'm wrong), that I'll be > talking about Automated Testing for this meeting. It won't take 2 > hours unless you have lots of questions, though, so bring any other > interesting ideas too. > > > On Feb 24, 2004, at 1:00 AM, scott@illogics.org wrote: > >> >> >> Hi, >> >> This is an automated message - this upcoming Thursday, the 30th, is a >> Perl Mongers >> night! >> >> Pack up your favorite old and new books, your problem code, your >> clever >> hacks, pick a new or favorite module from CPAN or your library to >> mention, >> if you want to share. >> >> If no topic has been announced, this is your chance to present that >> algorithm or module or technique - it doesn't have to be spectacular - >> people of all abilities show up and there is plenty of room for >> novice, >> intermediate, and expert content. If you don't suggest something, >> Doug, >> Kurt and Scott's inventory will be exhausted eventually, and no one >> wants >> that. >> >> Watch this space for confirmation of the meeting date and >> announcement of the >> final topic selection. >> >> >> > --------------------------------------------------------------------- > Michael Friedman HighWire Press, Stanford Southwest > Phone: 480-456-0880 Tempe, Arizona > FAX: 270-721-8034 > --------------------------------------------------------------------- > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From scott at illogics.org Tue Feb 24 15:50:26 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement Message-ID: <20040224215026.GA15916@illogics.org> "Cool" isn't the first word that comes to mind. I guess I'd better fix the bugs before I have it mail the list directly. So far I've just forwarded the messages and lazily not looked at them. I shouldn't be trying to work on the dates directly myself, but I've actually never worked with dates before! Amazing, I know. Atleast nothing more complex than grouping by month and recording and logging. I've seen ugly code using Date::Manip. What is the preferred method for doing this? This runs from cron, since you're curious ;) -scott #!/usr/bin/perl use Mail::Sendmail; # 0 1 2 3 4 5 6 7 my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime(time); # print "debug: mday: $mday wday: $wday\n"; if(($mday >= 1 and $mday <= 7) or ($mday >= 21 and $mday <= 27) ) { # first week or third week ranges for monday - add offsets for other days if($wday == 2) { # 2 == tuesday Mail::Sendmail::sendmail( # To => 'phoenix-pm-list@happyfunball.pm.org', To => 'scott@illogics.org', From => 'scott@illogics.org', Subject => 'Thursday Meeting Automated Pre-Announcement', Message => message(), ); } } sub message { my $thursdayith = $mday + 6; my $tail = substr($thursdayith, -1, 1); $thursdayith .= { 0 => 'th', 1 => 'st', 2 => 'nd', 3 => 'rd', 4 => 'th', 5 => 'th', 6 => 'th', 7 => 'th', 8 => 'th', 9 => 'th', }->{$tail}; return < wrote: > > Scott, > > In case you didn't notice, next week Thursday is March 4th, not the > 30th of February by any definition... *grin* > > So, what software did you use to generate this message? Something cool > with Date::* and Mail::Sendmail? > > -- Mike > > PS - I believe (Doug, please correct me if I'm wrong), that I'll be > talking about Automated Testing for this meeting. It won't take 2 hours > unless you have lots of questions, though, so bring any other > interesting ideas too. > > > On Feb 24, 2004, at 1:00 AM, scott@illogics.org wrote: > > > > > > > Hi, > > > > This is an automated message - this upcoming Thursday, the 30th, is a > > Perl Mongers > > night! > > > > Pack up your favorite old and new books, your problem code, your clever > > hacks, pick a new or favorite module from CPAN or your library to > > mention, > > if you want to share. > > > > If no topic has been announced, this is your chance to present that > > algorithm or module or technique - it doesn't have to be spectacular - > > people of all abilities show up and there is plenty of room for novice, > > intermediate, and expert content. If you don't suggest something, Doug, > > Kurt and Scott's inventory will be exhausted eventually, and no one > > wants > > that. > > > > Watch this space for confirmation of the meeting date and announcement > > of the > > final topic selection. > > > > > > > --------------------------------------------------------------------- > Michael Friedman HighWire Press, Stanford Southwest > Phone: 480-456-0880 Tempe, Arizona > FAX: 270-721-8034 > --------------------------------------------------------------------- > From scott at illogics.org Tue Feb 24 15:52:16 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement Message-ID: <20040224215215.GB15916@illogics.org> No forgiveness, only revenge!! When I find you, I'm going to uninstall vi and install emacs on all of your systems (unless you use emacs, in which case I'll uninstall emacs and install vi). -scott On 0, Michael Friedman wrote: > > Er, that came out wrong. I mean no disrespect. It was "joke, then > actual curious question, because I don't have a good timed mailer." > > -- Mike > > On Feb 24, 2004, at 2:34 PM, Michael Friedman wrote: > > > Scott, > > > > In case you didn't notice, next week Thursday is March 4th, not the > > 30th of February by any definition... *grin* > > > > So, what software did you use to generate this message? Something cool > > with Date::* and Mail::Sendmail? > > > > -- Mike > > > > PS - I believe (Doug, please correct me if I'm wrong), that I'll be > > talking about Automated Testing for this meeting. It won't take 2 > > hours unless you have lots of questions, though, so bring any other > > interesting ideas too. > > > > > > On Feb 24, 2004, at 1:00 AM, scott@illogics.org wrote: > > > >> > >> > >> Hi, > >> > >> This is an automated message - this upcoming Thursday, the 30th, is a > >> Perl Mongers > >> night! > >> > >> Pack up your favorite old and new books, your problem code, your > >> clever > >> hacks, pick a new or favorite module from CPAN or your library to > >> mention, > >> if you want to share. > >> > >> If no topic has been announced, this is your chance to present that > >> algorithm or module or technique - it doesn't have to be spectacular - > >> people of all abilities show up and there is plenty of room for > >> novice, > >> intermediate, and expert content. If you don't suggest something, > >> Doug, > >> Kurt and Scott's inventory will be exhausted eventually, and no one > >> wants > >> that. > >> > >> Watch this space for confirmation of the meeting date and > >> announcement of the > >> final topic selection. > >> > >> > >> > > --------------------------------------------------------------------- > > Michael Friedman HighWire Press, Stanford Southwest > > Phone: 480-456-0880 Tempe, Arizona > > FAX: 270-721-8034 > > --------------------------------------------------------------------- > > > --------------------------------------------------------------------- > Michael Friedman HighWire Press, Stanford Southwest > Phone: 480-456-0880 Tempe, Arizona > FAX: 270-721-8034 > --------------------------------------------------------------------- > From Eden.Li at asu.edu Tue Feb 24 17:43:35 2004 From: Eden.Li at asu.edu (Eden Li) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement In-Reply-To: <20040224215026.GA15916@illogics.org> Message-ID: On Tue, 24 Feb 2004, Scott Walters wrote: *snip* > sub message { > my $thursdayith = $mday + 6; > my $tail = substr($thursdayith, -1, 1); > $thursdayith .= { *snip* You should change the first line of message() to this: my $thursdayith = (localtime (time() + 6*24*60*60))[3]; From vodhner at cox.net Tue Feb 24 22:44:25 2004 From: vodhner at cox.net (Victor Odhner) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Processing Dates In-Reply-To: <20040224215026.GA15916@illogics.org> References: <20040224215026.GA15916@illogics.org> Message-ID: <403C2829.8020709@cox.net> Was Re: Phoenix.pm: Thursday Meeting Automated Pre-Announcement Hi, Scott. This is by no means to demean on your admirable shot at automatic notification. You're among friends here, and it gives us a chance to talk about Perl munging. I enjoy date manipulation. I've done *lots* of that over the past 25 years, and it just isn't all that tricky in most cases. So I've taken this occasion to ramble on a bit with my acquired (ahem) wisdom ... (Hey, if anyone replies to this bloated message, please don't quote it all!) I have used POSIX::mktime, but otherwise the standard functions in Perl are about all I have ever needed. As usual when I get to designing, I got a little carried away here. The concept below will keep track of multiple event notifications for multiple mailing lists, even more than one a day. Actually making it work, as the professor would say, is an exercise for the student ... Scott Walters wrote: > I shouldn't be trying to work on the dates directly > Myself, but I've actually never worked with dates > before! Amazing, I know. Atleast nothing more complex > than grouping by month and recording and logging. Always convert dates to integers before trying to do any arithmetic on them. I say this because I've been where you were today, and the code gets *very* complicated before you get it right. The localtime function is gold. Oops. You are calling gmtime instead of localtime. In Phoenix, you will be wrong if this runs before 7 a.m., or maybe before 8 a.m. during daylight savings. The purpose of localtime is to take care of all that for you. Even if everything else runs on Universal Time, you can set the time zone for -- or even inside -- this process. Next problem: you are doing all your computing with respect to today's date, but you are not checking the day of the meeting. It's ok to make a computation and trust your results, but it's better to check them. See below ... Eden Li suggested this: my $thursdayith = (localtime (time() + 6*24*60*60))[3]; The expression is good -- I tend to use 86400 because I know the number, but 24*60*60 is self-documenting and takes no time for the Perl compiler to convert to 86400. Still, it's a mistake to bury the "6" in with the other numbers. They won't change, but the 6 will -- count on it. Programs oversimplify the real world, so it is best to keep our assumptions out in the open. Something like this: my @daysahead = ( 6, 2 ); # For all events in %schedule, we will send out # messages six days and two days in advance. # A more sophisticated design could vary the intervals # for individual events ... my %schedule = ( "1:4" = # First week: Thursday [ "PerlMongers|7:00 P.M.|Bowne|PM" ], "3:2" = # Third week: Tuesday [ "PerlMongers|7:00 P.M.|TBD|PM" ], ); my %eventdesc = ( 'PerlMongers' => "Perl Mongers meeting", ); my %location = ( 'Bowne' => qq(Bowne, which is located at 1500 N. Central Avenue, which is on the Southwest corner of Central and McDowell. The parking lot is gated, so just press the button on the intercom, and tell the receptionist that you are there for the Perl meeting. Park in the lot that is straight ahead from the entrance on the South side of McDowell. Park in any uncovered, non-reserved space. Proceed to the main lobby, which is on the Northeast side of the parking lot. ), 'TBD' => "a location to be announced. ", ); my %addr = ( 'PM' => "phoenix-pm-list@happyfunball.pm.org", ); For your purposes, you don't need to ask about the time of day, so you can slice the localtime results like this: for my $interval ( @daysahead ) { my $secondsahead = $interval * 24*60*60; my ( $mday, $mon, $year, $wday ) = ( localtime( $secondsahead ) )[3..6] ... now you know that the day in which the time $secondsahead falls is in the future by one of the intervals declared in @daysahead. Now when you do each day's run, you can use some sort of modulo function against $mday to figure out $whichweek that day is in, 1 thru 5. Pair that with the day of week to make up a hash key: $schd = $schedule{ "$whichweek:$wday" }; if ( defined $schd && ref $schd ) { # $schd is a list reference. for my $event ( @{$schd) ) { my ( $what, $when, $where, $addy ) = split( /\|/, $event ); my $eventtext = $event{$what}; my $locationtext = $location{$where}; my $recipients = $addr{$addy}; ... send message here ... } If that expression comes up non-empty, then there is a meeting on $mday of $mon + 1. You can have as many arbitrary items on your schedule, as long as they are scheduled by day-number of week-number. And instead of just setting these hash entries to 1 (True), you could store them with any amount of information about the event: my %schedule = ( "1:4" = "PerlMongers", # First week : Thursday "3:4" = "PerlMongers", # Third week : Thursday ); I like that you are suffixing the dates, but I think the current schedule could result in our having a meeting on the "12nd". I'd lean towards something like this: my @suffix = qw( st nd rd th th th th th th th th th th th th th th th th th st nd rd th th th th th th th st ); Can you tell that I like table driven computing? That's from 30+ years of experience: listen to the old guy. It would be a good idea to mention the month the meeting is in. Matter of taste. In case anyone is not aware of it, the GNU "date" command (standard on Linux systems, often available elsewhere) is extremely powerful. There may be cases where a system call to that command would be more efficient (i.e., saving you hacking time) than working it out in Perl. Virtually endless formatting capabilities, and expressions like "first tuesday after ...". Just for good measure, I've attached code to convert a text date into a "time" seconds value. Take care, Vic If you want to convert a text date into a time_t (epoch seconds) value, you can use the standard Time::Local or POSIX::mktime. The following uses the latter, after cleaning up its input. sub ymd2time_t { # Input = year, month, day; Output - time_t. # Validates month. Does windowing for two-digit year. my ( $Y, $M, $MD ) = ( @_, 0, 0, 0 ); my @input = ( $Y, $M, $MD ); my $Y_input = $Y; my $tim = 0; for my $v ( $Y, $M, $MD ) { return $v if $v =~/^.invalid date/; return "[invalid date: ymd2time arguments = $Y $M $MD]\n" if $v eq 0; } return "[invalid date: Month = $M]\n" if $M < 1 || $M > 12; $M -= 1; return "[invalid date: Day-of-Month = $MD]\n" if $MD < 1 || $MD > 31; if ( $Y < 80 ) { # Window 2-digit year, pivot at 1/1/1980. $Y += 2000; } elsif ( $Y <= 99 ) { # Window 2-digit year $Y += 1900; } $Y -= 1900; # Now make it relative to 1900. $tim = POSIX::mktime( 0, 0, 0, $MD, $M, $Y, 0, 0, 0 ); if ( !$tim ) { # Check against known limits, ONLY if mktime failed. return "[ymd2time_t failed for date = $input]\n"; } return $tim; } From friedman at highwire.stanford.edu Wed Feb 25 12:12:08 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Processing Dates In-Reply-To: <403C2829.8020709@cox.net> References: <20040224215026.GA15916@illogics.org> <403C2829.8020709@cox.net> Message-ID: <1FFF98F8-67BE-11D8-9B38-000A956CAA2C@highwire.stanford.edu> Vic, Wow, that's thorough. I've learned several things just from reading your example. I would like to add the cheater's way out for your PS, though. The way I turn text dates into the seconds-from-epoch integer is to use Time::ParseDate. It un-formats about a hundred different ways to write a date and converts them to seconds. For example, you can give it strings like: "10/4/2003" "Mon Jan 2 04:24:27 1995" # Oracle format "2 months from now" "last Tuesday" and it just works. :-) See the perldoc for more details, of course. ============ use Time::ParseDate; # exports parsedate() by default $seconds = parsedate($string); # also takes a hash of options, like UK formatting ============ Thanks, -- Mike On Feb 24, 2004, at 9:44 PM, Victor Odhner wrote: > Was Re: Phoenix.pm: Thursday Meeting Automated Pre-Announcement > > Hi, Scott. > > This is by no means to demean on your admirable shot > at automatic notification. You're among friends here, > and it gives us a chance to talk about Perl munging. > > I enjoy date manipulation. I've done *lots* of that > over the past 25 years, and it just isn't all that > tricky in most cases. So I've taken this occasion > to ramble on a bit with my acquired (ahem) wisdom ... > > (Hey, if anyone replies to this bloated message, > please don't quote it all!) > > I have used POSIX::mktime, but otherwise the standard > functions in Perl are about all I have ever needed. > > As usual when I get to designing, I got a little > carried away here. The concept below will keep track > of multiple event notifications for multiple mailing > lists, even more than one a day. Actually making it > work, as the professor would say, is an exercise for > the student ... > > Scott Walters wrote: >> I shouldn't be trying to work on the dates directly >> Myself, but I've actually never worked with dates >> before! Amazing, I know. Atleast nothing more complex >> than grouping by month and recording and logging. > > Always convert dates to integers before trying to > do any arithmetic on them. I say this because I've > been where you were today, and the code gets *very* > complicated before you get it right. The localtime > function is gold. > > Oops. You are calling gmtime instead of localtime. > In Phoenix, you will be wrong if this runs before 7 a.m., > or maybe before 8 a.m. during daylight savings. > The purpose of localtime is to take care of all that > for you. Even if everything else runs on Universal > Time, you can set the time zone for -- or even inside -- > this process. > > Next problem: you are doing all your computing with > respect to today's date, but you are not checking the > day of the meeting. It's ok to make a computation > and trust your results, but it's better to check them. > See below ... > > Eden Li suggested this: > my $thursdayith = (localtime (time() + 6*24*60*60))[3]; > > The expression is good -- I tend to use 86400 because > I know the number, but 24*60*60 is self-documenting > and takes no time for the Perl compiler to convert to > 86400. Still, it's a mistake to bury the "6" in with the > other numbers. They won't change, but the 6 will -- > count on it. > > Programs oversimplify the real world, so it is best to > keep our assumptions out in the open. Something like this: > > my @daysahead = ( 6, 2 ); > # For all events in %schedule, we will send out > # messages six days and two days in advance. > # A more sophisticated design could vary the intervals > # for individual events ... > > my %schedule = ( > "1:4" = # First week: Thursday > [ "PerlMongers|7:00 P.M.|Bowne|PM" ], > "3:2" = # Third week: Tuesday > [ "PerlMongers|7:00 P.M.|TBD|PM" ], > ); > > my %eventdesc = ( > 'PerlMongers' => "Perl Mongers meeting", > ); > > my %location = ( > > 'Bowne' => qq(Bowne, which is located at 1500 N. Central Avenue, > which is on the Southwest corner of Central and McDowell. The parking > lot is gated, so just press the button on the intercom, and tell the > receptionist that you are there for the Perl meeting. Park in the lot > that is straight ahead from the entrance on the South side of McDowell. > Park in any uncovered, non-reserved space. Proceed to the main lobby, > which is on the Northeast side of the parking lot. ), > > 'TBD' => "a location to be announced. ", > > ); > > my %addr = ( > 'PM' => "phoenix-pm-list@happyfunball.pm.org", > ); > > For your purposes, you don't need to ask about the time > of day, so you can slice the localtime results like this: > > for my $interval ( @daysahead ) { > my $secondsahead = $interval * 24*60*60; > > my ( $mday, $mon, $year, $wday ) = > ( localtime( $secondsahead ) )[3..6] > > ... now you know that the day in which > the time $secondsahead falls is in the future by > one of the intervals declared in @daysahead. > > Now when you do each day's run, you can use some sort of > modulo function against $mday to figure out $whichweek that > day is in, 1 thru 5. Pair that with the day of week to > make up a hash key: > > $schd = $schedule{ "$whichweek:$wday" }; > > if ( defined $schd && ref $schd ) { > # $schd is a list reference. > for my $event ( @{$schd) ) { > my ( $what, $when, $where, $addy ) = split( /\|/, $event ); > my $eventtext = $event{$what}; > my $locationtext = $location{$where}; > my $recipients = $addr{$addy}; > > ... send message here ... > } > > If that expression comes up non-empty, then there is a meeting > on $mday of $mon + 1. You can have as many arbitrary > items on your schedule, as long as they are scheduled > by day-number of week-number. And instead of just setting > these hash entries to 1 (True), you could store them > with any amount of information about the event: > my %schedule = ( > "1:4" = "PerlMongers", # First week : Thursday > "3:4" = "PerlMongers", # Third week : Thursday > ); > > I like that you are suffixing the dates, but I think the > current schedule could result in our having a meeting on > the "12nd". I'd lean towards something like this: > > my @suffix = qw( > st nd rd th th th th th th th > th th th th th th th th th th > st nd rd th th th th th th th > st ); > > Can you tell that I like table driven computing? That's > from 30+ years of experience: listen to the old guy. > > It would be a good idea to mention the month the meeting > is in. Matter of taste. > > In case anyone is not aware of it, the GNU "date" command > (standard on Linux systems, often available elsewhere) > is extremely powerful. There may be cases where a > system call to that command would be more efficient > (i.e., saving you hacking time) than working it out > in Perl. Virtually endless formatting capabilities, > and expressions like "first tuesday after ...". > > Just for good measure, I've attached code to convert > a text date into a "time" seconds value. > > Take care, > > Vic > > If you want to convert a text date into a time_t (epoch seconds) > value, you can use the standard Time::Local or POSIX::mktime. > The following uses the latter, after cleaning up its input. > > sub ymd2time_t { # Input = year, month, day; Output - time_t. > > # Validates month. Does windowing for two-digit year. > my ( $Y, $M, $MD ) = ( @_, 0, 0, 0 ); > my @input = ( $Y, $M, $MD ); > my $Y_input = $Y; > my $tim = 0; > > for my $v ( $Y, $M, $MD ) > { > return $v if $v =~/^.invalid date/; > return "[invalid date: ymd2time arguments = $Y $M $MD]\n" > if $v eq 0; > } > > return "[invalid date: Month = $M]\n" > if $M < 1 || $M > 12; > > $M -= 1; > > return "[invalid date: Day-of-Month = $MD]\n" > if $MD < 1 || $MD > 31; > > if ( $Y < 80 ) { # Window 2-digit year, pivot at 1/1/1980. > $Y += 2000; > } > elsif ( $Y <= 99 ) { # Window 2-digit year > $Y += 1900; > } > > $Y -= 1900; # Now make it relative to 1900. > > $tim = POSIX::mktime( 0, 0, 0, $MD, $M, $Y, 0, 0, 0 ); > > if ( !$tim ) { # Check against known limits, ONLY if mktime > failed. > return "[ymd2time_t failed for date = $input]\n"; > } > > return $tim; > > } > > --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From scott at illogics.org Wed Feb 25 15:57:24 2004 From: scott at illogics.org (Scott Walters) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Re: Processing Dates Message-ID: <20040225215724.GF15916@illogics.org> On 0, Victor Odhner wrote: > > Was Re: Phoenix.pm: Thursday Meeting Automated Pre-Announcement > > Hi, Scott. > > This is by no means to demean on your admirable shot > at automatic notification. You're among friends here, > and it gives us a chance to talk about Perl munging. > "Admirable"? You're too kind. Or rather, too diplomatic. That script was quick, dirty, and wrong. And the "12nd" did happen and someone pointed it out on the list last time I forwarded its output =) Anything done without atleast consulting the perlfaq shouldn't be called a serious effort. Seriously, thank you for the tutorial. I hadn't heard the phrase "table driven" since my COBOL instructor in technical college used it 12 years ago. People say "configurable" a lot these days which isn't as specific and has ambagious intentions. And it's nice to know that you're writing robust code in good style rather than merely having the bugs out, and that's something you can only get from a code review. Cheers, -scott From vodhner at cox.net Wed Feb 25 19:22:11 2004 From: vodhner at cox.net (Victor Odhner) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Re: Processing Dates In-Reply-To: <20040226005904.PCW10839.lakemtao01.cox.net@lakemtao01> References: <20040226005904.PCW10839.lakemtao01.cox.net@lakemtao01> Message-ID: <403D4A43.3010509@cox.net> Scott Walters wrote: > I hadn't heard the phrase "table driven" since my > COBOL instructor in technical college used it > 12 years ago. People say "configurable" a lot > these days which isn't as specific ... Perl makes "table driven" a much more powerful concept, because setting up a few hashes absolutely kicks butt compared to what you could do in the Ancient Languages. I mean, basically to set up a table where you could do a lookup using a string as a key required a whole layer of implementation. You had to write the hash stuff, or the tree-search stuff, or fer gosh sakes do a serial search. COBOL actually came the closest, because it made Indexed Sequential files so easy to use, so you could put your tables out there on disk if you couldn't do them in memory. The next level is the pipe-delimited config file that you have your Perl program slurp up. You write while + split, and stuff the information into a few hashes, and with a few lines of code the program *knows stuff*. That's just so cool! Back in the day, I programmed in ALGOL and COBOL and PL/I and C and a few shells, but the hashes and regular expressions in Perl have kept me away from most of that stuff for most of the past eight years. Perl just works. But I don't write Perl scripts. I write programs. There's a difference in attitude between those two words. Vic P.S. -- How the heck did I get "slowass.net" tacked onto my address for this list? Egad. Mail Administrator wrote: > Reason: 5.0.0 <"phoenix-pm-list@happyfunball.pm.org"@slowass.net>... > Relaying Denied - I've got better things to do with my cycles From perlguy at earthlink.net Thu Feb 26 10:50:10 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement In-Reply-To: <2BCE0F3C-6711-11D8-8446-000A956CAA2C@highwire.stanford.edu> References: <200402242042.i1OKgpq4015342@slowass.net> <2BCE0F3C-6711-11D8-8446-000A956CAA2C@highwire.stanford.edu> Message-ID: <403E23C2.8050907@earthlink.net> Michael Friedman wrote: > Scott, > > In case you didn't notice, next week Thursday is March 4th, not the 30th > of February by any definition... *grin* > > So, what software did you use to generate this message? Something cool > with Date::* and Mail::Sendmail? > > -- Mike > > PS - I believe (Doug, please correct me if I'm wrong), that I'll be > talking about Automated Testing for this meeting. It won't take 2 hours > unless you have lots of questions, though, so bring any other > interesting ideas too. > You are correct sir! That's the plan. From perlguy at earthlink.net Thu Feb 26 10:56:10 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Thursday Meeting Automated Pre-Announcement In-Reply-To: <20040224215026.GA15916@illogics.org> References: <20040224215026.GA15916@illogics.org> Message-ID: <403E252A.80207@earthlink.net> Scott Walters wrote: > "Cool" isn't the first word that comes to mind. I guess I'd better fix the bugs > before I have it mail the list directly. So far I've just forwarded the messages > and lazily not looked at them. > > I shouldn't be trying to work on the dates directly myself, but I've actually > never worked with dates before! Amazing, I know. Atleast nothing more complex > than grouping by month and recording and logging. I've seen ugly code using Date::Manip. > What is the preferred method for doing this? This runs from cron, since you're curious ;) I've just started working with dates a lot recently. I'd recommend you check out the DateTime modules (http://datetime.perl.org/). DateTime::Event::Recurrence might be of particular interest. I'm not sure if these are the preferred modules right now, but the project was started to fix the problem of having a bazillion time/date modules that don't talk to each other. I'm still trying to wrap my brain around a lot of it. I'm sure there's a presentation in here somewhere ;) From perlguy at earthlink.net Thu Feb 26 10:59:34 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Processing Dates In-Reply-To: <403C2829.8020709@cox.net> References: <20040224215026.GA15916@illogics.org> <403C2829.8020709@cox.net> Message-ID: <403E25F6.5000305@earthlink.net> Victor Odhner wrote: > Was Re: Phoenix.pm: Thursday Meeting Automated Pre-Announcement > > Hi, Scott. > > This is by no means to demean on your admirable shot > at automatic notification. You're among friends here, > and it gives us a chance to talk about Perl munging. > > I enjoy date manipulation. I've done *lots* of that > over the past 25 years, and it just isn't all that > tricky in most cases. So I've taken this occasion > to ramble on a bit with my acquired (ahem) wisdom ... ... lots of cool stuff Sounds like Victor needs to do a presentation. :) From perlguy at earthlink.net Thu Feb 26 11:05:50 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Contact email address Message-ID: <403E276E.1020205@earthlink.net> All, Please use perlguy@earthlink.net to contact me until further notice. I've been living in email hell for a while now. I was trying to use the phoenixinternet.com account, but I'm having issues with it. I have a spam problem with the earthlink account (a spammer is using it as the from address in his/her mailings, and I get the bounces. Yay!), but I'll just have to live with it. Sorry for the confusion. From perlguy at earthlink.net Thu Feb 26 15:22:03 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: [Fwd: O'Reilly Looking for a Software Engineer--Sebastopol, CA] Message-ID: <403E637B.4090308@earthlink.net> Hello, Thought you should you know about this to pass along to any UG members or friends. (This information is available online at: http://www.oreillynet.com/pub/j/5) Software Engineer, Sebastopol, CA O'Reilly is looking for a Software Engineer to work as a part of the development team in our Sebastopol office. This position will be primarily responsible for supporting our production staff in the development and maintenance of program tools to convert incoming manuscripts to final book form. Minimum Requirements: Advanced knowledge of system analysis and design. This should include structured methodologies, logical and physical database design, and business process engineering. Practical experience in XML and web services. Ability to use XML in document preparation. Must have knowledge of XSL-FO and XSLT. Experience with DocBook is preferred. Knowledge of FrameMaker is a real plus. Expertise in Perl and at least one other programming language (preferably Java or C/C++) and application development experience in web-based systems and client-server environments. Minimum of a Bachelors degree in Computer Sciences or related field OR 6-8 years of actual related business experience. Proven project management skills. Ability to solve complex technical and business issues with direction/approval. Must possess good communication skills, both verbal and written with demonstrated success in a team environment. Ability to interpret, evaluate and respond to problems and requests received from business users. Working knowledge of the publishing industry is desirable. Organized, deadline driven and pays attention to detail. Location: Sebastopol, CA Status: Full-time Education: College Travel: Yes Telecommuting: no Contact Us Jobs@O'Reilly O'Reilly Media, Inc. 1005 Gravenstein Highway North Sebastopol, CA 95472 Fax: 707-829-9610 Email: jobs@oreilly.com No phone calls please. From friedman at highwire.stanford.edu Thu Feb 26 16:12:44 2004 From: friedman at highwire.stanford.edu (Michael Friedman) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Out of area jobs In-Reply-To: <403E637B.4090308@earthlink.net> References: <403E637B.4090308@earthlink.net> Message-ID: I didn't think we were supposed to mention jobs available outside the area, but since Doug did... My group, HighWire Press, a division of the Stanford University Libraries, will be looking to hire another developer in the very near future. The job would be full-time, on-site at Stanford in beautiful Palo Alto, CA. Duties: Java and Perl programming for our Apache 1/mod_jserv/Sybase/Verity web infrastructure. The job is more Java than Perl, but there's plenty of Perl work to go around. Experience with Object-oriented and database programming a must. Must be willing to work in an office with dogs running loose. (I'm not kidding.) See our homepage at http://highwire.stanford.edu/ for "company" info, or just ask me. We're also looking for a project manager and a customer-service rep (non-programming), if anyone's interested. -- Mike On Feb 26, 2004, at 2:22 PM, Douglas E. Miles wrote: > > Hello, > > Thought you should you know about this > to pass along to any UG members or friends. > > (This information is available online at: > http://www.oreillynet.com/pub/j/5) > > Software Engineer, Sebastopol, CA --------------------------------------------------------------------- Michael Friedman HighWire Press, Stanford Southwest Phone: 480-456-0880 Tempe, Arizona FAX: 270-721-8034 --------------------------------------------------------------------- From perlguy at earthlink.net Fri Feb 27 13:54:08 2004 From: perlguy at earthlink.net (Douglas E. Miles) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Out of area jobs In-Reply-To: References: <403E637B.4090308@earthlink.net> Message-ID: <403FA060.7030806@earthlink.net> Michael Friedman wrote: > I didn't think we were supposed to mention jobs available outside the > area, but since Doug did... It's fine by me. I hate to see people move away, but in this market, you do what you have to do. :) From phx-pm-list at grueslayer.com Fri Feb 27 21:24:50 2004 From: phx-pm-list at grueslayer.com (David A. Sinck) Date: Thu Aug 5 00:17:15 2004 Subject: Phoenix.pm: Out of area jobs References: <403E637B.4090308@earthlink.net> <403FA060.7030806@earthlink.net> Message-ID: <16448.2562.962583.381334@magnitude.righthandgraphics.com> \_ SMTP quoth Douglas E. Miles on 2/27/2004 12:54 as having spake thusly: \_ \_ Michael Friedman wrote: \_ > I didn't think we were supposed to mention jobs available outside the \_ > area, but since Doug did... \_ \_ It's fine by me. I hate to see people move away, but in this market, \_ you do what you have to do. :) Run drugs across the border? :-) Oh wait, most people in Arizona call that "getting prescriptions cheaper". :-) David