2024 π Daylatest newsbuy art
And whatever I do will become forever what I've done.Wislawa Szymborskadon't rehearsemore quotes
very clickable
data + munging

The Perl Journal

Volumes 1–6 (1996–2002)

Code tarballs available for issues 1–21.

I reformatted the CD-ROM contents. Some things may still be a little wonky — oh, why hello there <FONT> tag. Syntax highlighting is iffy. Please report any glaring issues.

The Perl Journal
#11
Fall 1998
vol 3
num 3
The Birth of a One-Liner
A beginner's look at shrinking Perl code.
Just the FAQs: Suffering From Buffering
Your output doesn't always appear when you think it does.
Parsing VRML
Using Perl to interpret the Virtual Reality Modeling Language.
Source Filters
Ever wanted to encrypt your Perl programs?
A Web Proxy Module For mod_perl
Eliminate ads from your web pages with a proxy.
Perl Style
How readable is your code?
Perl News
What's new in the Perl community.
Win32: PerlCOM And PerlCtrl
Two new products for gluing Win32 COM objects.
Benchmarking
Measuring the speed of Perl programs.
Iterating Over Permutations
Making certain brute force searches a little more tractable.
Creating Applications With mod_perl
Using Apache::Registry, Apache::Sandwich, Embperl, and DBI.
Making Life And Death Decisions With Perl
Probability theory and deadly diseases.
Netscape and LDAP
Accessing directories via the Lightweight Directory Access Protocol.
The Third Annual Obfuscated Perl Contest Victors
perl -e '$# = print "1 + 1 = "; print 2'
The Perl Journal One-Liners
Jon Orwant (1998) Perl News. The Perl Journal, vol 3(3), issue #11, Fall 1998.

Perl News

What's new in the Perl community.

Jon Orwant


P erl 5.005 is no longer in beta. The most recent version is Perl 5.005_02, available on the CPAN.

The O'Reilly Perl Conference 2.0 took place August 17–20 in the San Jose Fairmont hotel. It was better attended (over 1200 attendees) and had more material for seasoned Perl programmers than last year. There were three parallel tracks: Applied Perl, User Applications, and Perl and Apache.

There's too much to say about the conference; I recommend Vicki Brown's SunWorld summary at https://www.sun-world.com/swol-09-1998/swol-09-perlconf.html.

Larry Wall gave another well-received State of the Onion speech, talking about complexity, natural language, Unicode, and onion rings.

People seemed to like my possibly-annual Perl Quiz Show. The 1998 champions: Graham Barr, Brand Hilton, and Nick Ing-Simmons, representing the Dallas/Fort-Worth Perl Mongers. The questions, answers, and commentary are available on the TPJ web site.

Tim Bray gave a well-attended talk about XML; more information about the marriage of Perl and XML is available at https://www.perl.com/perl-xml.html.

Ted Nelson, who coined the term 'hypertext' back in 1965, surprised the Developer's Workshop by demoing Zigzag, his multidimensional hyperstructure construction kit written in Perl.

Head Perl Mongers brian d foy, Adam Turoff, and David Adler did a great job popularizing the Perl Mongers at the conference, which is why there are so many new user groups to report: Amsterdam, Blacksburg, Champaign-Urbana, Dayton, Lisbon, Melbourne, Pittsburgh, Rhode Island, Stockholm, Vancouver, and Washington D.C. More information about the Mongers is available from https://www.pm.org.

Next year's conference will take place August 21–24, 1999 in Monterey, California. The Call for Papers is now available at https://conference.perl.com/pace/conf/confdocs/call.html; working code and abstracts are due April 9.

Chris Nandor now maintains a Perl News column at https://www.perl.org/news.html, updated daily with newly-uploaded modules. Chris also released Audio::MP3::Tag, which lets you extract and edit tag information in MP3 files. Then he got a little crazy and wrote perlport.pod, a guide to writing portable Perl code. It's bundled with new versions of Perl and is therefore available at CPAN/doc/manual/html/pod/perlport.html.

Chip Salzenberg and Alan Olsen have created six mailing lists at perl.org; send mail to majordomo@perl.org with"subscribe LISTNAME" in the body of your message to join these groups:

  • announce: an e-mail version of Chris Nandor's News column
  • advocacy: how to popularize Perl in the corporate world
  • module-authors: design issues for Perl modules
  • perl6-porters: brainstorming about Chip's Topaz project
  • Perl-RTOS: porting Perl to real-time operating systems
  • pod-people: Perl documentation issues
Win32::SerialPort and Win32API::CommPort, by Bill Birthsiel, allow access to Win32 serial devices such as modems.

Ken Fox updated his X11::Lib, X11::Motif, and X11::Toolkit modules and released a few more: X11::Xbae, X11::XRT, and X11::Xpm. Ken also uploaded Math::Units, which converts between different systems of units. A related module is Colin Kuskie's Convert::SciEng, which converts numbers between scientific notation postfix (2.5m) and regular numbers (2.5e-3).

Bek Oberin released five modules: Lingua::EN::Gender, which performs English inflection of pronouns; Festival::Client, which sends text to a Festival speech synthesizer; Net::Goofey, a client interface to Goofey servers; Net::ICQ, a client for ICQ servers (ICQ is a program that lets you find your friends and associates in real-time); and Text::LineEditor, a Berkeley-mail style line editor. The Math::Expr module, by Hakan Ardo, parses mathematical expressions into a tree structure.

TinyHTTPD, by James Briggs, is a small but featureful pure Perl web server in a single file. It supports authentication, caching, and SSI support.

Ken Williams updated or released seven modules: Text::Fillin, supporting fill-in text templates; Tie::TextDir, a module that ties a hash to a Unix directory; Tie::DB_Lock, which lets you lock DB_Files; Tie::LLHash, which implements "ordered" Perl hashes; HTML::SimpleParse, an HTML parser suited for filtering HTML; Apache::SSI, a module that performs HTML server-side includes with mod_perl, and Taco, a dynamic web page framework for mod_perl.

The sitemapper, by Ave Wrigley, is a script that takes a base URL, traverses the web pages below it, and generates an HTML page illustrating the site. It's available from https://www.cre.canon.co.uk/perl/authors/wrigley/.

Blair Zajac's WebFS::FileCopy module lets you move files around the web. Instead of providing traditional pathnames, you provide URLs instead. It requires Gisle Aas' LWPng (Library-World-Wide-Web-Perl-Next-Generation) package. Gisle also released URI, an update and simplification of the URI::URL classes. He also wrote a Lisp evaluator in Perl called perl-lisp.

AltaVista::SearchSDK, by James Turner, makes the AltaVista search engine API available to Perl. It's useful if you're running the AltaVista search engine on your site.

A milestone for Perl database hackers: Tim Bunce released version 1.00 of DBI, the Database Interface. I recommend the DBI home page maintained by Alligator Descartes at https://www.symbolstone.org/technology/perl/DBI/index.html if you work with databases.

Raphael Manfredi's popular Storable module, for maintaining persistent data structures, is now in beta.

Philip Aston's CORBA::IOP::IOR lets you manipulate Common Object Request Broker Architecture Interoperable Object References if you can handle all the jargon. The other CORBA module is Oliver Kellogg's CORBA::IDLTree, an IDL to symbol tree translator.

ptkdb, by Andrew Page, is a graphical (Perl/Tk) debugger. You can retrieve it from https://world.std.com/~aep/ptkdb.

The Perl/Tk module list is at CPAN/modules/by-module/tk-modlist.html.

Shinji Kono released CheckBoard, a Perl/Tk calendar and scheduler.

The Text::Graphics module, by Stephen Farrell, is a toolkit for rendering plain text via an API like that used for graphics rendering in GUI toolkits. It's meant to be used for complicated text positioning, such as intricate email or fax forms.

Shawn Wallace released four modules of PostScript drawing routines: PS::Document, PS::TextBlock, PS::Metrics, and PS::Elements.

Stephen McCamant released a new version of B::Deparse, a compiler backend that turns compiled Perl programs back into source code.

Charlie Stross released NetServer::SMTP, a minimal mail server. It requires IO::Socket, NetServer::Generic, Mail::Internet, Mail-Utils, Data::Dumper, and FreezeThaw. Also in the NetServer:: category is NetServer::ProcessTop, which shows you information about the event loop of a process.

mon, by Jim Trocki, is a an extensible service monitor which can be used to watch network resources. It supports parallelization and can send out email, pages, or other alerts when something fails. It can test for disk space, HTTP, SMTP, NNTP, FTP, POP3, IMAP, SNMP, ping, and telnet. You can download it from https://www.kernel.org/software/mon/.

Amine Moulay Ramdane released the Win32::MemMap module, which lets you move regions of memory around faster than a traditional copy. It's available from https://www.generation.net/~cybersky/Perl/camel.shtml.

Joshua Pritikin's Module::Reload reloads any files in %INC based on their timestamps.

The enum pragma, by Byron Brummer, lets you use C-style enumerated types in Perl. It's useful for giving mnemonic names to array indices, or catching some typos at compile time.

Gurusamy Sarathy uploaded PerlInterp, a proof-of-concept for creating Perl interpreters from within Perl.

Lincoln D. Stein released Crypt::CBC, a pure Perl implementation of cryptographic cipher block chaining. It requires the MD5 module and either the Crypt::DES module or the Crypt::IDEA module, depending on which encryption algorithm you want to use. Luis Munoz released Crypt::PasswdMD5, which uses the MD5 module to implement the crypt() function. However, it's not freeware; according the license you have to buy Luis a beer if you meet him. Luis also wrote Auth::Challenge::Basic, which uses MD5 to implement a simple challenge-response authentication.

The Geanfammer module (GEnome ANalysis and protein FAMily MakER), by the Cyrus Clothia group, takes a protein sequence and shows all of the sequence domains.

Information about modules and other Perl news should be sent to news@tpj.com and news@perl.org.

The Comprehensive Rerl Archive Network (CPAN).


Jon Orwant is the editor and publisher of The Perl Journal and an IBM fellow at the MIT Media Lab.

listing 1

The Comprehensive Perl Archive Network (CPAN)
Jon Orwant (1998) Perl News. The Perl Journal, vol 3(3), issue #11, Fall 1998.
The Comprehensive Perl Archive Network (CPAN)

The CPAN is the world's distributed, replicated repository of Perl utilities. Unless noted otherwise, you can find everything in this column on the CPAN. Visit Tom Christiansen's multiplexer to be redirected to a CPAN site near you:

You'll be able to find the modules under the author's name, at https://www.perl.com/CPAN/modules/by-authors.

https://www.perl.com/CPAN/modules/INSTALL.html has instructions on how to build modules on all major operating systems.

You can also use Andreas König's CPAN module to automatically install modules. Once you've installed it, perl -MCPAN -e 'install("modulename")' will automatically download, build, and install the module for you.

If you'd like to contribute your module to the CPAN, good for you! Read CPAN/modules/04pause.html for details.

Martin Krzywinski | contact | Canada's Michael Smith Genome Sciences CentreBC Cancer Research CenterBC CancerPHSA
Google whack “vicissitudinal corporealization”
{ 10.9.234.152 }