[9398] in Perl-Users-Digest
Perl-Users Digest, Issue: 2993 Volume: 8
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Jun 26 12:20:28 1998
Date: Fri, 26 Jun 98 09:00:27 -0700
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Fri, 26 Jun 1998 Volume: 8 Number: 2993
Today's topics:
Re: "truncate" heilp needed! (Mark-Jason Dominus)
Re: $size = `du -s $directory' is doubling value when r <nguyend7@egr.msu.edu>
Re: 2 Minutes of your time gentleman !! (Mark-Jason Dominus)
Re: A new Perl keyword: MSPH [Was: What a Crappy World <ed@lodge.ton.tut.fi>
Re: Can someone explain the arrow operator ? (Mark-Jason Dominus)
Re: Can someone explain the arrow operator ? (Mike Mckinney)
Re: Checking if a file does NOT exist (Larry Rosler)
Re: Flames.... <camerond@mail.uca.edu>
Re: Flames.... (Josh Kortbein)
Re: giving a 45-minute talk on perl... pointers? <quednauf@nortel.co.uk>
Re: giving a 45-minute talk on perl... pointers? <ajohnson@gpu.srv.ualberta.ca>
How to unpack a 64 bit integer poccia@yahoo.com
Re: Linked list and a code challenge (Snowhare)
Re: Linked list (Mark-Jason Dominus)
New Module List Posted (Andreas Koenig)
oop design question <prl2@lehigh.edu>
ptkdb Vers 1.02 Perl Debugger with pTk GUI (Andrew E Page)
Re: QUE: Oraperl and &ora_open <mike@tech.eurodyn.com.gr>
Sending output to a specific frame <roba@viewsoft.com>
Re: Sending output to a specific frame (brian d foy)
Starting a Dallas Perl Mongers group (Brand and Karina Hilton)
use of crypt to encrypt password <alcazar@netcomp.net>
Re: use of crypt to encrypt password (jeremy howard todd)
Re: What a Crappy World (oh, yes!) <ed@lodge.ton.tut.fi>
Digest Administrivia (Last modified: 8 Mar 97) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: 26 Jun 1998 10:34:31 -0400
From: mjd@op.net (Mark-Jason Dominus)
Subject: Re: "truncate" heilp needed!
Message-Id: <6n0bhn$qkj$1@monet.op.net>
In article <359143D6.4F5A@21st-century-comm.com>,
Mikhail Galbmillion <galbmill@21st-century-comm.com> wrote:
>Is there anyway to trim a string to required size without saving it in
>file?
# Put first 2000 characters into $short_string without changing $string
$short_string = substr($string, 0, 2000);
Or
# Chop off all but first 2000 characters
substr($string, 2000) = '';
Do not use `truncate'.
------------------------------
Date: 26 Jun 1998 15:21:31 GMT
From: Dan Nguyen <nguyend7@egr.msu.edu>
Subject: Re: $size = `du -s $directory' is doubling value when running from the web
Message-Id: <6n0e9r$od9$1@msunews.cl.msu.edu>
Beck Web Servers & Design <admin@bwsd.com> wrote:
: Here's what I have now
: -------------------------
: #!/usr/local/bin/perl
: $directory = "/usr/local/etc/httpd/htdocs/dir";
: $size = `du -s $directory`;
try using du -sk. That'll give you the size in KBytes.
: print "Content-type: text/plain\n\n";
: print "$size\n\n";
: ----------------------
: The output when run from the web is:
: 24062 /usr/local/etc/httpd/htdocs/dir
: The outup when run from the shell is:
: 12031 /usr/local/etc/httpd/htdocs/dir
: The shell value for the bytes used by the directory structure
: "/usr/local/etc/httpd/htdocs/dir" is correct.
: Why is the value doubling on the web run, and how can I correct it?
: ---
: Eric Beck, BWSD
: http://web-design.net/index.shtml
: mailto:erbeck@web-design.net
: Phone: 905 436 6814 Fax: 905 725 4023
: ============================================================
: Internet Call Manager - Get Your Calls While Online!
: http://internetcallmanager/agents/bwsd
: ============================================================
: BECK WEB SERVERS & DESIGN - WHERE SUPPORT AND SERVICE ARE #1
: ============================================================
--
Dan Nguyen |
nguyend7@cse.msu.edu | I am Grey.
http://www.cps.msu.edu/~nguyend7 |
------------------------------
Date: 26 Jun 1998 10:48:59 -0400
From: mjd@op.net (Mark-Jason Dominus)
Subject: Re: 2 Minutes of your time gentleman !!
Message-Id: <6n0ccr$qp3$1@monet.op.net>
In article <6mrc1v$f71$1@front5.grolier.fr>, delta <delta@netpage.tm.fr> wrote:
>How could I avoid to get a "space line" type:
>----------------------------------
>
>---------------------------------
>
>---------------------------------
>when nothing is drop in a FIC
>Look at the PRINT FIC script
foreach $key (qw(lieu2 titre1 titre2 texte2 titre3)) {
next unless $in{$key} =~ /\S/; # Skip missing items
print FIC $in{$key}, "\n";
print FIC "--------------------------\n";
}
------------------------------
Date: 26 Jun 1998 18:23:20 +0300
From: Edvard Majakari <ed@lodge.ton.tut.fi>
Subject: Re: A new Perl keyword: MSPH [Was: What a Crappy World (oh, yes!)]
Message-Id: <m0u358jifr.fsf@lodge.ton.tut.fi>
>>>>> "Matthew" == Matthew O Persico <mpersico@erols.com> writes:
Matthew> much easier to write, "This is an FAQ question" and leave it
Matthew> at that than to write a diss'ing dissertion, that one has to
Matthew> question the motivations and character of the
Matthew> Mean-Spirited-Perl-Hackers (MSPHs).
Yes. I whole-heartidly agree to this.
Matthew> 2) I'd like to see how far any of the MSPHs would get if
Matthew> Usenet were conducted in person. It's kind of like
Matthew> road-rage, protection by separation. How brave are you in
Matthew> person? Wanna try that attitude in a NYC subway car?
Very true. I think we should remember this is common in Usenet :(
Too often, social behaviour is very aggressive in newsgroups. Even
normally 'nice' people tend to look for errors in others posts, and
whenever possible, they'll fire their full arsenal of weapons into
these poor novices (or others, if possible). This seems to be
especially common among comp.progr. oriented people - I'm being
critical to myself too, because sometimes I'm guilty of this arrogant,
mean-spirited behaviour.
To summarize - I'd say we have two major problems in the Usenet:
1) Wrong posts in wrong groups, very low S/N ration in some groups
2) People pointing out 1) using wrong methods,
ie. aggressive, insulting behaviour
--
//Ed GSM: 040 5960810 URL: http://lodge.ton.tut.fi/%7Eed/
signal(i, SIG_DFL); /* crunch, crunch, crunch */
--Larry Wall in doarg.c from the perl source code
------------------------------
Date: 26 Jun 1998 10:06:54 -0400
From: mjd@op.net (Mark-Jason Dominus)
Subject: Re: Can someone explain the arrow operator ?
Message-Id: <6n09tu$qet$1@monet.op.net>
In article <m33ecthutp.fsf@windlord.Stanford.EDU>,
Russ Allbery <rra@stanford.edu> wrote:
>> $hash_ref->{Adam}
>In the spirit of TIMTOWTDI, I personally strongly dislike the last form,
I suppose you must draw the line somewhere though, because you
presumably don't prefer
${${$$x{y}}[3]}{z}
to
$x->{y}[3]{z}
?
------------------------------
Date: 26 Jun 98 15:39:21 GMT
From: mike@bga.com (Mike Mckinney)
Subject: Re: Can someone explain the arrow operator ?
Message-Id: <slrn6p7g74.aka.mike@mike.local.net>
On Thu, 25 Jun 1998 17:55:17 GMT, Matt Knecht <hex@voicenet.com> wrote:
>Mike Mckinney <mike@bga.com> wrote:
>Before I start, I _highly_ recommend chapter 4 from the blue Camel,
>"References and Nested Data Structures". It hadles this subject quite
>well. But, for a quick example:
Yes, I'm hoping to be able to buy the blue Camel soon, but I just haven't been
able to afford it so far. I did read the first chapter on-line, and even that
little bit cleared up some things, so I'm sure the rest of the book will be a
major help to me.
Thanks for the clear examples you posted, they should be a great help in
getting over this hurdle. As you said before, I am having trouble with
references, but from what I can gather from this NG, and what I've read
on-line, it is recommended to use a reference when possible...Note that as far
as I know this has'nt been stated outright, but from the code and examples
I've seen, the above appears to hold. So, even with a simple scalar
assignment, using a reference is preferable, like so ? :
$file = $$cooling if
instead of :
$file = $cooling if
--
mikem@wans.net , mike@bga.com
------------------------------
Date: Fri, 26 Jun 1998 07:30:57 -0700
From: lr@hpl.hp.com (Larry Rosler)
Subject: Re: Checking if a file does NOT exist
Message-Id: <MPG.ffd507e138feba9896f6@nntp.hpl.hp.com>
In article <3593B6D9.B8611142@palisade.com>, Stanton Loh
<sloh@palisade.com> says...
> Ryan Snowden wrote:
...
> > This isn't what I'm after though. I want to check if the file DOESN'T
> > exist.
>
> unless (-s $filename) {
> #blah
> }
That test fails if the file exists but has zero length. You really want
-e $filename. Or, if you want to be sure that it exists and is a file
(not a directory), -f $filename.
--
Larry Rosler
Hewlett-Packard Laboratories
http://www.hpl.hp.com/personal/Larry_Rosler/
lr@hpl.hp.com
------------------------------
Date: Fri, 26 Jun 1998 09:56:17 -0500
From: Cameron Dorey <camerond@mail.uca.edu>
To: Randal Schwartz <merlyn@stonehenge.com>
Subject: Re: Flames....
Message-Id: <3593B691.115D84A1@mail.uca.edu>
[cc'd to rs]
Good morning, Randal,
Randal Schwartz wrote:
>
> [snip]
> One of the most significant events in the "dumbing down" of Usenet
> was the day that Netscape added a "POST" button to their *web browser*
> making it pretend to be a newsreader (which it STILL isn't).
>
> And that's why people still routinely killfile any postings from web
> browsers. Ugh. (I don't, but I think about it very often.)
I hope you don't. In the spirit of TIMTOWTDI, NS is the easiest tool I
have for news, once I reconfigured the default to "plain text." BTW, I
don't remember whether you or TC (or someone else) recommended to
someone else abandoning "message boards" in favor of a private
newsserver, but I want to thank you (him/her) for the suggestion. Much
better than reinventing the wheel (especially for someone who can't draw
a decent circle).
Cameron
camerond@mail.uca.edu
------------------------------
Date: 26 Jun 1998 15:46:59 GMT
From: kortbein@iastate.edu (Josh Kortbein)
Subject: Re: Flames....
Message-Id: <6n0fpj$9ea$1@news.iastate.edu>
Tom Christiansen (tchrist@mox.perl.com) wrote:
: [courtesy cc of this posting sent to cited author via email]
: In comp.lang.perl.misc, les@MCS.COM (Leslie Mikesell) writes:
: :How do you grep the documentation for all the CPAN modules without
: :downloading and building everything first?
: This is a wonderful question, and one which I have been
: thikning upon for some time.
: But I'm not convinced that it's that critical that the
: CPAN modules be greppable like that.
It has seemed to me that many of the modules are ill-named or
ill-described, or contain features I may want that are not clearly
contained within those modules. It's a pain in the ass to have to
read the docs for six different modules to find the one I want,
and I think being able to find out which modules docs contain "foo"
would be a useful way to reduce the number of modules I need
to waste time hunting through.
That seems to be a pretty useful feature, IMO. After all, Yahoo
doesn't expect people to search through every web pages in
a category by hand, in order to find the page of choice...
Josh
_________________________________________________________
I do not trust your bitch.
- Frederich Nietzche, in _Also Sprach Zarathustra_
------------------------------
Date: Fri, 26 Jun 1998 15:17:35 +0100
From: "F.Quednau" <quednauf@nortel.co.uk>
Subject: Re: giving a 45-minute talk on perl... pointers?
Message-Id: <3593AD7F.C970CEFC@nortel.co.uk>
John Klassa wrote:
>
> I'm considering giving a 45-minute talk on the basics of perl... My goal
> will be to present the basics -- to get across enough information to enable
> the audience to go off and pursue perl for themselves should they have an interest.
>
Hmmm, I've never done a talk on Perl, but I think I'd cover the following
topics:
-History of Perl (Why is it there?)
=> Don't forget to mention the 'pathologically eclectic Rubbish Lister'
=> Up to a dominance in the CGI sector
-How does it work?
=> Interpreter based, but
=> compiled
-What Perl is good for
=> Practical Extraction and report language
=> Probably Everything, Right Larry ?
-What Perl isn't good for
=> Scratching your back
-Perl resources
=> CPAN, CPAN, CPAN
=> Where to find the relevant docs and faq's
=> Good books (Llama, Camel, mastering regexp's [I guess, I don't know it])
-Perl itself (if you've got time)
=> Some sweet example, where maybe you open all files in a directory,
counting
all the occurences of the word 'sex' and then present it in a wonderfully
cheesy format: That should get your people awake again, all this in 3
lines.
=> If you want to scare some people, show the same program in ObfuscPerl,
half a line.
=> Maybe a cool error message, as Perl is the language where I am able to
understand them.
(Something happens in line GOOGOL, possibly a runaway line in line 3)
=> Some outlooks. References, Objects, Tied variables.
You could possibly change the sequence of the last two points. Enjoy your
speech!
--
____________________________________________________________
Frank Quednau
http://www.surrey.ac.uk/~me51fq
________________________________________________
------------------------------
Date: Fri, 26 Jun 1998 09:45:48 -0500
From: Andrew Johnson <ajohnson@gpu.srv.ualberta.ca>
Subject: Re: giving a 45-minute talk on perl... pointers?
Message-Id: <3593B41C.3160A4D7@gpu.srv.ualberta.ca>
In article <6n08a7$8sk$1@aurwww.aur.alcatel.com>
klassa@aursgh.aur.alcatel.com (John Klassa) wrote:
!
! I'm considering giving a 45-minute talk on the basics of perl... The talk
! will be part of a program of lunchtime talks we have, wherein people get
! up and talk for 45 minutes or so on a topic that interests them. My goal
! will be to present the basics -- to get across enough information to enable
! the audience (who are all technical folks) to go off and pursue perl for
! themselves should they have an interest.
!
! I'm looking for tips/advice from those of you who've done something like
! this in the past... Ideas for an outline, topics to stress, topics to
! avoid -- whatever might be helpful -- would be appreciated.
in 45 minutes I think I'd focus on giving more of a
historical/philosophical overview. Perl as a natural
language has good potential here --- see the beginning of
chapter one of the camel, and Larry's discussion in
this newsgroup with Subject: Re: Linguistics and Perl?
<1995Jul27.013157.14701@netlabs.com>.
Of course, include discussion of what is Perl ('Practically
Everything Really Likeable' ---can't recall where I heard or
read that one sorry), what's it good for, the availability
and importance of CPAN...
good luck
regards
andrew
------------------------------
Date: Fri, 26 Jun 1998 15:33:12 GMT
From: poccia@yahoo.com
Subject: How to unpack a 64 bit integer
Message-Id: <6n0evo$4fl$1@nnrp1.dejanews.com>
Does someone know how to unpack a 64 bit integer (signed or unsigned)?
I am working on a OpenVMS VAX environment and I have to read both VMS date,
which is an unsigned quadword, and COBOL S9(15) COMP, which is a signed
quadword (two-complement), from a fixed length record.
Note that the DEC C compiler i used to build Perl hasn't a 64 bit integer
support, while the OpenVMS Alpha version has.
Thanks in advance,
Danilo.
-----== Posted via Deja News, The Leader in Internet Discussion ==-----
http://www.dejanews.com/ Now offering spam-free web-based newsreading
------------------------------
Date: 26 Jun 1998 15:44:09 GMT
From: snowhare@devilbunnies.org (Snowhare)
Subject: Re: Linked list and a code challenge
Message-Id: <6n0fk9$8d0$1@supernews.com>
Nothing above this line is part of the signed message.
In article <6n0avs$qgq$1@monet.op.net>, Mark-Jason Dominus <mjd@op.net> wrote:
>Linked lists in Perl are a very silly idea. There is no benefit.
<frown>
You are much too fast to disparage a fundamental data structure. I
agree that *most* of the usages you would see in 'C' of the simplest
a->b->c->d type are not necessary in Perl - that does not mean that
there are no good uses for them in Perl. You can't express more
complex relationships like c->a->b->e->f
^ |
| |
d<----
without the use of the concepts of linked lists.
And when writing maximally portable code to manage things like
b-trees or free space chains for file record storage allocation
management, they are unavoidable.
Linked lists are not a 'C' feature - they are a fundamental
data structure.
Ah. Here is a code challenge for everyone:
Given a finite linked list similiar the one I drew above, determine
if a *loop* exists in the linked list with the smallest possible
use of memory (scratch variables) and CPU (in other words the
lowest order computational complexity). You should return the
list element where the loop occurs ('b' in the example above) or
null if no loop is present. The linked list is in the form
of a hash ($hsh{'1022'} => '3421'; $hsh{'3421'} => '54532';, and
so on). The loop may be any size up to and including the entire
linked list or as small as 2 elements linked together at the tail.
Benjamin Franz
Version: 2.6.2
iQCVAwUBNZPHQujpikN3V52xAQFWFAQAufUj4y2qVwmMlAkYk46z2ueR8a/3KKdK
EoZG4GBCMAt0cjcQrQejG7vJZooCJMIlFZyOM+Lly4DKFT6/EtnYxYGOPeGL2WwO
vP+chwvRxcfMgxh0ZbJhejX6LfIC6mfTjOR7Hu11CFqmqUHscHbPgwrahVir35Z4
oEg7nZIIB6w=
=NwMM
-----END PGP SIGNATURE-----
------------------------------
Date: 26 Jun 1998 10:25:00 -0400
From: mjd@op.net (Mark-Jason Dominus)
Subject: Re: Linked list
Message-Id: <6n0avs$qgq$1@monet.op.net>
In article <3592B55C.FF530916@eccms1.dearborn.ford.com>,
Bryan Belanger <bbelang1@eccms1.dearborn.ford.com> wrote:
>I am currently using a linked list in Perl for a nasty sort.
Brian Foy already said most of what I wanted to say, but I had a
couple of remarks to add:
> "Can't modify modulus in scalar assignment" error:
In addition to denoting a hash variable, % is the `modulus' operator,
which returns the remainder after division, like in C. When Perl sees
> %{$cur_ReOrder}->{'next'} = %{$next}->{'next'};
The %'s don't make any sense, and guesses (wrong) that you meant to
use % as the modulus operator rather than as a hash specifier.
So the real meaning of this diagnostic is that you wrote something
nonsensical and confused Perl.
--------------------------------
Linked lists in Perl are a very silly idea. There is no benefit.
Normally, (in C, for example) you use linked lists when you want to
aggregate several items together, and you cannot use an array because
you do not know in advance how many items you will have.
But Perl's arrays can grow dynamically. You can always add new
elements to the end of the array with the `push' operator. When
you're done, you can use the builtin `sort' operator to sort the
elements.
Except perhaps as a pedagogical exercise, using linked lists in Perl
is nearly always a very bad design choice. They will probably be
slower, harder to program and to understand, and much more prone to
errors. They will take up more program text space and more memory
than Perl arrays, and they will be less flexible.
Summary: If you're programming in Perl, program in Perl, not C.
------------------------------
Date: 26 Jun 1998 14:32:49 GMT
From: andreas.koenig@franz.ww.tu-berlin.de (Andreas Koenig)
Subject: New Module List Posted
Message-Id: <6n0beh$1mr$1@mamenchi.zrz.TU-Berlin.DE>
Keywords: FAQ, Perl, Module, Software, Reuse, Development, Free
The Perl 5 Module List, v2.48
=============================
Today I posted a new module list to the newsgroups
comp.lang.perl.modules, comp.answers, and news.answers. The HTML
version of the list has been uploaded to CPAN as well:
http://www.perl.com/CPAN/modules/00modlist.long.html
As usual, comments, corrections and suggestions are highly
appreciated. Not only to the new entries below but to the whole module
list. Please mail them to modules@perl.org. I believe that we have
taken into account all mails we have received since the last posting.
If this is not the case, please mail your request again. Sorry for the
inconvenience.
Recent Changes in the modules database (! for changes, "+" for new entries)
---------------------------------------------------------------------------
2) Perl Core Modules, Perl Language Extensions and Documentation Tools
----------------------------------------------------------------------
enum cdpf resemble enumerated types in C ZENIN +
3) Development Support
----------------------
Devel::
::DebugAPI bdpf Interface to the Perl debug environment JHA +
4) Operating System Interfaces, Hardware Drivers
------------------------------------------------
BSD::
::Ipfwgen bdpf Generate ipfw(8) filters MUIR +
Netware::
::Bindery cd+O Interface to Novell Bindery mode calls KTHOMAS +
::NDS cd+O Interface to Novell Directory Services KTHOMAS +
5) Networking, Device Control (modems) and InterProcess Communication
---------------------------------------------------------------------
CORBA::IOP::
::IOR adpO Decode, munge, and re-encode CORBA IORs PHILIPA +
IPC::
::ChildSafe RdcO Control child process w/o risk of deadlock DSB +
Net::
::CDDB cdpr Interface to the CDDB (CD Database) DSTALDER +
::DNS bdpO Interface to the DNS resolver MFUHR !
::Dict i Client of Dictionary Server Protocol (DICT) ABIGAIL +
::Netmask adpO Understand and manipulate network blocks MUIR +
::TFTP cdpf Interface to Trivial File Transfer Protocol GBARR +
6) Data Types and Data Type Utilities (see also Database Interfaces)
--------------------------------------------------------------------
Algorithms::Numerical::
::Sample RD?? Knuth's sample algorithm ABIGAIL +
::Shuffle Rd?? Knuth's shuffle algorithm ABIGAIL +
Class::
::Singleton bdpO Implementation of a "Singleton" class ABW !
Date::
::Calc Rdcf Gregorian calendar date calculations STBEY +
Heap bdpO Define Heap interface JMM +
Heap::
::Binary bdpO Implement Binary Heap JMM !
::Binomial bdpO Implement Binomial Heap JMM !
::Elem bdpO Heap Element interface, ISA JMM +
Heap::Elem::
::Num bdpO Numeric heap element container JMM +
::NumRev bdpO Numeric element reversed order JMM +
::Ref bdpO Obj ref heap element container JMM +
::RefRev bdpO Obj ref element reversed order JMM +
::Str bdpO String heap element container JMM +
::StrRev bdpO String element reversed order JMM +
::Fibonacci bdpO Implement Fibonacci Heap JMM !
Math::
::Expr adpO Parses agebraic expressions HAKANARDO +
Set::
::Object bdcO Set of Objects (smalltalkish: IdentitySet) JLLEROY +
Statistics::
::ROC bdpO ROC curves with nonparametric conf. bounds HAKESTLER +
Storable bdcr Persistent data structure mechanism RAM !
Tie::
::Cache adpO In memory size limited LRU cache CHAMAS !
::DBI RdpO Tie hash to a DBI handle LDS !
::DB_Lock i Tie DB_File with automatic locking KWILLIAMS +
::TextDir i ties a hash to a directory of textfiles KWILLIAMS +
7) Database Interfaces (see also Data Types)
--------------------------------------------
DBD::
::Altera bdpO Altera SQL Server for DBI - pure Perl code DSOUFLIS +
::CSV adcO SQL engine and DBI driver for CSV files JWIED +
::XBase ampO XBase driver for DBI JANPAZ !
Db::
::Ctree bdcr Faircom's CTREE+ database interface REDEN !
Metadata::
::Base bdpO Base metadata functionality DJBECKETT +
::IAFA bdpO IAFA templates metadata DJBECKETT +
::SOIF bdpO Harvest SOIF metadata DJBECKETT +
XBase bdpO Read/write interface to XBase files JANPAZ !
8) User Interfaces (Character and Graphical)
--------------------------------------------
Term::ReadLine::
::Gnu RdcO GNU Readline XS library wrapper HAYASHI !
X11::
::Wcl bdcO Interface to the Widget Creation Library JHPB !
9) Interfaces to or Emulations of Other Programming Languages
-------------------------------------------------------------
Language::
::PGForth i Peter Gallasch's Forth implementation PETERGAL +
10) File Names, File Systems and File Locking (see also File Handles)
---------------------------------------------------------------------
LockFile::
::Simple adpr Simple file locking mechanism RAM +
Stat::
::lsMode Rdpf Translate mode 0644 to -rw-r--r-- MJD +
11) String Processing, Language Text Processing, Parsing and Searching
----------------------------------------------------------------------
Lingua::
::EN i Namespace for English language modules +
Lingua::EN::
::Cardinal i Convert numbers to words HIGHTOWE +
::Inflect Rdpf English singular->plural and "a"->"an" DCONWAY +
::Ordinal i Convert numbers to words HIGHTOWE +
Quiz::
::Question cdpO Questions and Answers wrapper RFOLEY +
RTF::
::Base i Classes for Microsoft Rich Text Format NI-S +
SQL::
::Statement adcO Small SQL parser and engine JWIED +
Text::
::CSV_XS adpO Fast 8bit clean version of Text::CSV JWIED +
::Graphics RdpO Layout Helper for non-graphical terminals SFARRELL +
::MetaText bdpO Text processing/markup meta-language ABW !
::Soundex Supf Convert a string to a soundex value MARKM !
13) Internationalization and Locale
-----------------------------------
I18N::
::LangTags Rdpf compare & extract language tags (RFC1766) SBURKE +
14) Authentication, Security and Encryption (see also Networking)
-----------------------------------------------------------------
Authcard::
::SDI RdcO SecurityDynamics SecurID cards interface NIGELM +
Authen::
::ACE adcO Interface to Security Dynamics ACE (SecurID) DCARRIGAN +
::Krb5 cdcO Interface to Kerberos API JHORWITZ !
::PAM adcf Interface to PAM library NIKIP +
Crypt::
::CBC adpO Cipherblock chaining for Crypt::DES/IDEA LDS +
15) World Wide Web, HTML, HTTP, CGI, MIME etc (see Text Processing)
-------------------------------------------------------------------
CGI::
::CList bdpO Manages hierarchical collapsible lists PEARCEC +
::Cache adpf Speed up slow CGI scripts by caching BROCSEIB +
::Query adpO Parse CGI quiry strings MPECK +
::Validate adpO Advanced CGI form parser ZENIN +
FCGI Rdcr Fast CGI SKIMO !
HTML::
::Mason bdpO Build sites from modular Perl/HTML blocks JSWARTZ +
HyperWave::
::CSP cdpO Interface to HyperWave's HCI protocol GOSSAMER +
LWP::
::Parallel RmpO Allows parallel http and ftp access with LWP MARCLANG +
WebFS::
::FileCopy bdpf Get, put, copy, delete files located by URL BZAJAC +
17) Archiving, Compression and Conversion
-----------------------------------------
Convert::
::SciEng i Convert scientific postfix scale factors COLINK +
18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
----------------------------------------------------------------
Chart::
::Plot bdcO Graph two-dimensional data (uses GD.pm) SMORTON +
Image::
::Grab RdpO Grabbing images off the Internet MAHEX +
T3D cdpO Realtime extensible 3D rendering GJB +
VRML::
::Browser i A complete VRML viewer LUKKA +
20) Control Flow Utilities (callbacks and exceptions etc)
---------------------------------------------------------
Hook::
::PrePostCall adpO Add actions before and after a routine PVERD +
21) File Handle, Directory Handle and Input/Output Stream Utilities
-------------------------------------------------------------------
IO::
::AtomicFile adpO Write a file which is updated atomically ERYQ +
::Lines bdpO I/O handle to read/write to array of lines ERYQ +
::Scalar RdpO I/O handle to read/write to a string ERYQ !
::ScalarArray RdpO I/O handle to read/write to array of scalars ERYQ !
::Wrap RdpO Wrap old-style FHs in standard OO interface ERYQ !
::WrapTie adpO Tie your handles & retain full OO interface ERYQ +
::Zlib adpO IO:: style interface to Compress::Zlib TOMHUGHES +
22) Microsoft Windows Modules
-----------------------------
Win32::
::SerialPort adpO Win32 Serial functions/constants/interface BBIRTH +
23) Miscellaneous Modules
-------------------------
Cisco::
::Conf adpO Cisco router administratian via TFTP JWIED +
Decision::
::Markov i ? ALANSZ +
Games::
::WordFind bdpO Generate word-find type puzzles AJOHNSON +
HP200LX::
::DB cdpO Handle HP 200LX palmtop computer database GGONTER +
::DBgui cdpO Tk base GUI for HP 200LX db files GGONTER +
WeatherNOAA Rdpf Current/forecast weather from NOAA MSOLOMON +
24) Interface Modules to Commercial Software
--------------------------------------------
AltaVista::
::SDK cdcf Perl Wrapper for AltaVista SDK functionality JTURNER +
Resolute::
::RAPS cd+O Interface to Resolute Software's RAPS CHGOETZE +
Recent Changes in the users database (both new entries and updates)
-------------------------------------------------------------------
ANDYGLEW Andy Glew <glew@cs.wisc.edu>
BBIRTH Bill Birthisel <wcbirthisel@alum.mit.edu>
BLANTREWI Boris Lantrewitz <lantrewi@do.isst.fhg.de>
BRIAN Brian H. Dunford-Shore <brian@ibc.wustl.edu>
BROCSEIB Broc Seib <bseib@purdue.edu>
BZAJAC Blair Zajac <blair@gps.caltech.edu>
CHGOETZE Christian Goetze <perl@resolute.com>
COLINK Colin Kuskie <ckuskie@cadence.com>
COOPERCL Clark Cooper <coopercl@sch.ge.com>
DENWA Dennis Watson <dwatson@netguide.com>
DJBECKETT Dave Beckett <D.J.Beckett@ukc.ac.uk>
DSB David Boyce <dsb@world.std.com>
DSOUFLIS Dimitrios Souflis <dsouflis@altera.gr>
GLENNWOOD Glenn Wood <glenn@savesmart.com>
HAKANARDO Hakan Ardo <hakan@debian.org>
HAKESTLER Hans A. Kestler <hans.kestler@medizin.uni-ulm.de>
JGBISHOP Jeremy G. Bishop <jeremy@evolution.com>
JHA John Aughey <jha@aughey.com>
JLLEROY Jean-Louis Leroy <jll@skynet.be>
JSWARTZ Jonathan Swartz <jswartz@cmp.com>
JTURNER James Turner <james@csmonitor.com>
JWIED Jochen Wiedmann <joe@ispsoft.de>
KTHOMAS Kenny Thomas <adminkt@flint.umich.edu>
LEITE Pedro Leite <leite@ua.pt>
MARKPRIOR Mark Prior <mrp@connect.com.au>
NREICHEN Nils Reichen <reichen@eicn.ch>
PEARCEC Christian Pearce <pearcec@dml0.wcupa.edu>
PHILIPA Philip Aston <philipa@parallax.co.uk>
SKIMO Sven Verdoolaege <skimo@kotnet.org>
SNEEX Bill Jones (aka Sneaker) <sneex@fccj.org>
TOMHUGHES Tom Hughes <tom@compton.demon.co.uk>
--
andreas koenig
------------------------------
Date: Fri, 26 Jun 1998 11:01:41 -0400
From: "Phil R Lawrence" <prl2@lehigh.edu>
Subject: oop design question
Message-Id: <6n0d4f$26v8@fidoii.cc.Lehigh.EDU>
_________________________________________
package Text::Manip;
use strict;
sub new {
... bless ... return ...
}
..other subs..
sub format_sub_group {
sub new {
### OK, here's my question.
}
sub format_top {
...
}
...
_________________________________________
I want to create an object in format_sub_group such that I could then say things
like:
$t = Text::Manip->new;
$f = $t->format_sub_group->new;
$f->format_top($blah);
How should I design the constructor for format_sub_group so that I can do this?
Thanks,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phil R Lawrence phone: 610-758-3051
Programmer / Analyst e-mail: prl2@lehigh.edu
194 Lehigh University Computing Center
E.W. Fairchild - Martindale, Bldg. 8B
Bethlehem, PA 18018
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------
Date: Fri, 26 Jun 1998 15:04:47 GMT
From: aep@world.std.com (Andrew E Page)
Subject: ptkdb Vers 1.02 Perl Debugger with pTk GUI
Message-Id: <Ev5z80.5AE@world.std.com>
Keywords: perl debugger ptk Tk perlTk ptkdb
ptkdb A Perl debugger with Graphical User Interface
Compatible with Unix, Linux, Win95/NT
You can find this utility with at:
<a href="http://world.std.com/~aep/ptkdb">http://world.std.com/~aep/ptkdb</a>
http://world.std.com/~aep/ptkdb
The page also has links to perlTk for Unix, and binary
distributions of perl with Tk install for Win95/NT.
New Version 1.02
New Features:
Stack menu, "Better" menus, Expression hiding.
Bug Fixes:
Fixed a bug that would cause the debugger to exit if you
entered the same expression twice.
Minor bug fixes to clean up messages from perl when running
with ptkdb and -w. (Am I using the -w switch?)
--
Andrew E. Page (Warrior Poet) | Decision and Effort The Archer and Arrow
Software Engineering Consultant | The difference between what we are
Unix, Mac, C/C++/Java, Perl, NT | and what we want to be.
------------------------------
Date: Fri, 26 Jun 1998 17:25:33 +0300
From: Tsoukalos Mihalis <mike@tech.eurodyn.com.gr>
Subject: Re: QUE: Oraperl and &ora_open
Message-Id: <3593AF5C.EC3559F0@tech.eurodyn.com.gr>
Hello to everyone.
I am going to reply to my own posting.
I found out that you cannot use ora_bind(...) to give dynamically the name
of the table [it is somehow logical].
That is why ora_open(...) was not able to recognise my command properly.
But you can use perl variables to do it.
Here is some of the code that I used to do it...
Please correct me if I am wrong.
$TABLE = "mikex";
$csr = &ora_open($lda, "insert into $TABLE values (:1,:2)") || die
"ora_open\n";
print $csr."\n";
&ora_bind($csr, 'jim', 123) || die "ora_bind1\n";
&ora_bind($csr, 'john', 18344) || die "ora_bind2\n";
Also with Perl variables you can what ora_bind(...) does
$t1 = "\'sometext\'";
$t2 = 11111;
&ora_do($lda, "insert into $TABLE values ($t1,$t2)") || die $ora_errstr;
I suppose that the reason for using ora_bind(...) is speed. Please correct
me if I am wrong.
Tsoukalos Mihalis wrote:
> Hello to everyone.
> I read the man pages of oraperl and I wrote a small perl program.
> The problem is that it gives me errors. :-)
>
> Here is the program:
> --------------------------------
>
> $table = "mikex";
>
> eval 'use Oraperl; 1' || die $@ if $] >= 5;
>
> $lda = &ora_login('dev1','login','password') || die $ora_errstr;
> print $lda."\n";
>
> $SELECT = "select * from :1";
> print $SELECT."\n";
>
> $csr=&ora_open($lda, $SELECT) || die $ora_errstr." **ora_open** "; #
> here is the error.
> &ora_bind($csr, $table) || die $ora_errstr." **ora_bind** ";
> print $csr."\n";
>
> $nfields = &ora_fetch($csr) || die $ora_errstr." **ora_fetch** ";
> print $nfields." "."\n";
>
> while ( ($var1,$var2) = &ora_fetch($csr) )
> {
> print $var1." ".$var2." \n";
> }
>
> &ora_close($csr) || die $ora_errstr." **ora_close** ";
> &ora_logoff($lda)|| die $ora_errstr." **ora_logoff** ";
>
> exit 1;
> ----------------------------
> When I try to run it, it gives me the following error message:
>
> @mafalda ~/oracle ex2.pl
> Changing ORACLE_HOME for dev1 to /opt/oracle/app/oracle/product/7.3.2 at
> /home/s
> alusa/mike/lib/perl5/DBD/Oracle.pm line 163.
> DBI::db=HASH(0x1c8db8)
> select * from :1
> ORA-00903: invalid table name (DBD: error possibly near <*> indicator at
> char 16
> in 'select * from :<*>p1') **ora_open** at ex2.pl line 19.
> @mafalda ~/oracle
>
> If I change the program a little in order not to use the :1 substitution
> method it works fine.
>
> If any one can help me please do so.
> thanks in advance,
> mihalis.
>
> PS. Please if you can email the answer as well as sending it to the
> newsgroup.
>
> --
> --------------------------------------
> Name: Mihalis Tsoukalos
> Software Engineer
> mailto:mike@tech.eurodyn.com.gr
> Home Email: mailto:diogenes@hol.gr
--
--------------------------------------
Name: Mihalis Tsoukalos
Software Engineer
mailto:mike@tech.eurodyn.com.gr
Home Email: mailto:diogenes@hol.gr
PS. Please email the answer to me as well as sending it to the usenet.
------------------------------
Date: Fri, 26 Jun 1998 09:06:24 -0600
From: "Rob Archibald" <roba@viewsoft.com>
Subject: Sending output to a specific frame
Message-Id: <3593b8e7.0@news3.uswest.net>
I have two search locations on my site, one for the whole site, and the
other just for the documentation. For the documentation, the search engine
is contained in a frame. I need to be able to direct the output from that
frame to the MAIN frame for the results. Is there any way to do this in
Perl?
------------------------------
Date: Fri, 26 Jun 1998 11:30:25 -0400
From: comdog@computerdog.com (brian d foy)
Subject: Re: Sending output to a specific frame
Message-Id: <comdog-ya02408000R2606981130250001@news.panix.com>
Keywords: from just another new york perl hacker
In article <3593b8e7.0@news3.uswest.net>, "Rob Archibald" <roba@viewsoft.com> posted:
>I have two search locations on my site, one for the whole site, and the
>other just for the documentation. For the documentation, the search engine
>is contained in a frame. I need to be able to direct the output from that
>frame to the MAIN frame for the results. Is there any way to do this in
>Perl?
the CGI Meta FAQ references the documents which you need. btw, there
nothing Perlish about this, since it is done the same way in any
language - just follow the protocol.
good luck :)
--
brian d foy <comdog@computerdog.com>
CGI Meta FAQ <URL:http://computerdog.com/CGI_MetaFAQ.html>
Comprehensive Perl Archive Network (CPAN) <URL:http://www.perl.com>
Perl Mongers T-shirts! <URL:http://www.pm.org/tshirts.html>
------------------------------
Date: Fri, 26 Jun 1998 14:09:18 GMT
From: bkhilton@netcom.com (Brand and Karina Hilton)
Subject: Starting a Dallas Perl Mongers group
Message-Id: <bkhiltonEv5wnI.1pz@netcom.com>
So far, I've gotten several responses to previous posts on
this topic. Among them, Graham Barr (the author of more
CPAN modules than you can shake a stick at) expressed interest,
and Randal Schwartz offered to get together with us at an
unspecifiec future date. But I'm giving you all one more chance to
respond, just because I'm such a nice guy :-)
If you live and/or work in the Dallas area and are
interested in periodically getting together with other Perl
afficionados, please drop me a line.
For more info on Perl Mongers groups, visit
http://www.pm.org
Brand
------------------------------
Date: Fri, 26 Jun 1998 09:27:16 -0500
From: "Ric Alcazar" <alcazar@netcomp.net>
Subject: use of crypt to encrypt password
Message-Id: <O4ZJ45Qo9GA.51@upnetnews05>
Hello all,
I'm trying to encrypt a password to a file for use with htaccess.
However, I do not understand its functionality nor syntax. What I'm trying
to do is just write a simple script that prompts a user for a password, then
takes that password and encrypts it to a htpasswd file allowing
authorization. if someone could help me out, it would be greatly
appreciated.
Ric
------------------------------
Date: 26 Jun 1998 15:12:42 GMT
From: jhtodd@students.uiuc.edu (jeremy howard todd)
Subject: Re: use of crypt to encrypt password
Message-Id: <6n0dpa$4sl$1@vixen.cso.uiuc.edu>
"Ric Alcazar" <alcazar@netcomp.net> writes:
> I'm trying to encrypt a password to a file for use with htaccess.
>However, I do not understand its functionality nor syntax. What I'm trying
>to do is just write a simple script that prompts a user for a password, then
>takes that password and encrypts it to a htpasswd file allowing
>authorization. if someone could help me out, it would be greatly
>appreciated.
Your server probably already has such a program, usually
called htpasswd. For Apache and some other UNIX servers, the
default default location is /usr/local/etc/httpd/support/.
If you can't use this utility or -really- feel like doing it
in perl, try:
$encrypted = crypt($password, substr($password, 0, 2));
That's what the docs recommend anyway. I haven't really had
much cause to test it myself.
-jht
--
Jeremy Todd Computer Programmer _,/
jhtodd@uiuc.edu ITCS On-line Development <__ \_.---.
http://www.cen.uiuc.edu/~jhtodd/ College of ACES, UIUC \_ / \
Zupfe Boy and Night Owl (And Kangaroo Aficianado) \)\ /\.\
=========================================================== // \\
"M-O-O-N, that spells moon" - Tom Cullen ,/' `\_,
------------------------------
Date: 26 Jun 1998 18:02:08 +0300
From: Edvard Majakari <ed@lodge.ton.tut.fi>
Subject: Re: What a Crappy World (oh, yes!)
Message-Id: <m0wwa4jjf3.fsf@lodge.ton.tut.fi>
>>>>> "Bryan" == Bryan Camp <b-camp@students.uiuc.edu> writes:
Bryan> personal e-mail, but to the newsgroups as well. If a post
Bryan> says "Newbie" in the subject line, how hard is it to hit the
Bryan> delete key?
Exactly. I'm all for rising S/N -ratio here, but I do feel Olga has
gotten a bit too harsh treatment. What it comes to her posts - it is
true that 'wrongly' quoted follow-ups/e-mails are annoying, but I
wouldn't blame her but the software she uses (take Gnus for example,
in the documentation, Lars has put a great deal of good notes on
etiquette). Besides, one should correct at least first politely before
firing the full load at the poor object. Or something like that.
Just my 2 cents,
--
//Ed GSM: 040 5960810 URL: http://lodge.ton.tut.fi/%7Eed/
: I've tried (in vi) "g/[a-z]
[a-z]/s//_/"...but that doesn't
: cut it. Any ideas? (I take it that it may be a two-pass sort of solution).
In the first pass, install perl. :-) Larry Wall <6849@jpl-devvax.JPL.NASA.GOV>
------------------------------
Date: 8 Mar 97 21:33:47 GMT (Last modified)
From: Perl-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 8 Mar 97)
Message-Id: <null>
Administrivia:
The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc. For subscription or unsubscription requests, send
the single line:
subscribe perl-users
or:
unsubscribe perl-users
to almanac@ruby.oce.orst.edu.
To submit articles to comp.lang.perl.misc (and this Digest), send your
article to perl-users@ruby.oce.orst.edu.
To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.
To request back copies (available for a week or so), send your request
to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
where x is the volume number and y is the issue number.
The Meta-FAQ, an article containing information about the FAQ, is
available by requesting "send perl-users meta-faq". The real FAQ, as it
appeared last in the newsgroup, can be retrieved with the request "send
perl-users FAQ". Due to their sizes, neither the Meta-FAQ nor the FAQ
are included in the digest.
The "mini-FAQ", which is an updated version of the Meta-FAQ, is
available by requesting "send perl-users mini-faq". It appears twice
weekly in the group, but is not distributed in the digest.
For other requests pertaining to the digest, send mail to
perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
sending perl questions to the -request address, I don't have time to
answer them even if I did know the answer.
------------------------------
End of Perl-Users Digest V8 Issue 2993
**************************************