[roch-pm] [Fwd: www.perl.com: Program Repair Shop and Red Flags]

Brian Mathis bmathis at directedge.com
Thu Nov 16 13:23:32 CST 2000



-------- Original Message --------
From: "www.perl.com update" <onperl at lists.oreillynet.com>
Subject: www.perl.com: Program Repair Shop and Red Flags
Resent-From: perl-update at lists.oreillynet.com
To: <perl-update at pepper.oreillynet.com>

         www.perl.com update
--------------------------------------
The Email for www.perl.com Subscribers


============================================================
Sponsored by Allaire Corporation, Creators of ColdFusion

Problems meeting tight deadlines? ColdFusion 4.5, the leading
Web app server, has the solution with an integrated suite of 
visual tools, powerful server technology, and an open language 
environment. Download your FREE evaluation copy today at 
http://www.allaire.com/cfads/perl2

============================================================


Hello, perl.com subscribers.

***Perl News***

Work on Perl 5.7 is ongoing, while "perlio" continues to be 
fascinating.  If you've been paying attention to Perl development 
over the last few years, you might have noticed a trend away from 
the use of system-supplied library functions like "qsort" and "printf".  

Perl 5.6 carries its own versions of these common utilities, mostly
for portability reasons.  If printf varies from system to system, it
means that identical Perl programs might produce different output on
different systems.  But if Perl uses its own private printf, the
output will be the same everywhere.  

There are also quality reasons for providing private versions of these
functions.  A private printf means that we can add new features to
printf, or support the full complement of C99 conversion specifiers,
without worrying that Perl might have been compiled on an old system
with an obsolete printf.  The replacement of qsort was prompted by the
bad behavior of certain vendor qsort functions, which had a propensity
to dump core.

The latest step in this process is that Nick Ing-Simmons has written
an entire replacement standard I/O package for Perl, called "perlio".
Once again, the motivations are portability and quality.  (For
example, the stdio package on some versions of Solaris cannot open
more than 255 files at once.)  

But the major motivation was that it's really necessary for a proper
implementation of Unicode support and line disciplines.  A Perl
program should be able to read a file written in a national character
set such as Latin-1 or ISO-2022 and translate it automatically into a
UTF-8 encoding.  But that might require reading too many bytes and
then backing up again, something that most standard I/O libraries
won't do.  So Nick has built a new one from the bottom up.  
Thank you, Nick! 

***What's New on the Site***

I finally returned to my well-received "Program Repair Shop and Red
Flags" series.  Previous articles in this series took real Perl code
supplied by real beginning Perl programmers and then showed how to
make it smaller and better.  The new article is the same, although
somewhat longer than the others so far.  I go over an entire code
library line by line and show how to turn it into a Perl 5
object-oriented module.  Along the way, I point out "red flags", 
which are early warnings signs that you might see in your own code 
that almost always indicate that something is wrong.

I didn't mean to wait so long before doing another "Red Flags"
article, but it's hard to find suitable code.  (I think you'll be
surprised when you learn where I found the code I used in the most
recent article.)  If you think you might be interested in contributing
20-50 lines of code for a future "Red Flags" article, please do send
me a note.

***Anniversary***

I'm not exactly sure when I officially signed the contract with
O'Reilly to work on the web site for them, but it must have been just
about a year ago, because last week I sent off monthly invoice number
13.  (That's how contractors tell time, you know---by the invoice
numbers.)  

So I'd like to thank O'Reilly and Associates, who generously offered
me the job in the first place, to all the writers and editors I've
worked with over the last year, and especially to you folks who have
sent me such interesting mail.  Thank you all!  It has been a
pleasure, and I expect it will continue to be so.

Thank you again.  I will be in touch again next week.

Mark Dominus
Managing Editor

***
 
Article: Program Repair Shop and Red Flags
http://www.perl.com/pub/2000/11/repair3.html?wwwrrr_20001115.txt
Once again I take a real program written by a genuine
novice and show how to clean it up and make it better.  This
time we turn a perl4 library into a Perl 5 object-oriented
module. I show how to recognize some "red flags" that
are early warning signs that you might be doing some of         
the same things wrong in your own programs.

 
Beginner's Introduction to Perl - Part 2
http://www.perl.com/pub/2000/11/begperl2.html?wwwrrr_20001115.txt
The second part in a new series that introduces Perl to people
who haven't programmed before.  This week: Files and strings. 
If you weren't sure how to get started with Perl, here's your
chance!

 
Article: Hold the Sackcloth and Ashes
http://www.perl.com/pub/2000/11/jarkko.html?wwwrrr_20001115.txt
Jarkko Hietaniemi, the Perl release manager, responds to the
critique of the Perl 6 RFC process. 

 
Article: Critique of the Perl 6 RFC Process
http://www.perl.com/pub/2000/11/perl6rfc.html?wwwrrr_20001115.txt
Many of the suggestions put forward during the Perl 6
request-for-comment period revealed a lack of understanding of
the internals and limitations of the language. Mark-Jason
Dominus offers these criticisms in hopes that future RFCs may
avoid the same mistakes -- and the wasted effort. 

 
Perl Conference: State of the Onion 2000
http://www.perl.com/pub/2000/10/23/soto2000.html?wwwrrr_20001115.txt
Larry Wall's annual report on the state of Perl, from TPC 4.0
(the fourth annual Perl conference) in Monterey in July 2000. In
this full length transcript, Larry talks about the need for
changes, which has led to the effort to rewrite the language in
Perl 6.



         Sister Sites:
---------------------------------
O'Reilly Network
http://www.oreillynet.com
The Source for Open and Emerging Technologies

XML.com
http://xml.com/
XML from the inside out.

O'Reilly and Associates
http://www.oreilly.com/
O'Reilly computer books, software and online publishing.

-----------------------------------------------------------------
If you want to cancel a subscription to this newsletter,
please email the word "unsubscribe" in the SUBJECT of the message to
perl-update-request at pepper.oreillynet.com. 

NOTE: Please make certain to unsubscribe from the email 
address at which you receive this message

For non-automated human help email onperl at oreillynet.com
-----------------------------------------------------------------
--
For information on unsubscribing from this list, please visit
http://rochester.pm.org



More information about the Rochester-pm mailing list