#!perl # Name: Run HTML::Parser from libwww-perl on the www.perl.com frontpage # Require: 5.002 # Desc: # This test runs the HTML::Parser from libwww-perl on the www.perl.com # frontpage. package MyParser; @ISA=qw(HTML::Parser); sub new { @tags = (); my $class = shift; $class->SUPER::new(@_); } sub start { my($self, $tag, $attr, $attrseq, $origtext) = @_; push(@tags, "<$tag>"); } sub end { my($self, $tag, $origtext) = @_; push(@tags, ""); } package main; $HTML=<<'EOT'; # Dump of www.perl.com at 1997-01-04 The www.perl.com Home Page Nav bar Perl.com CPAN Perl Language Perl Reference Perl Conference Programming Republic of Perl
Programming Republic of Perl
www.perl.com Home Page
About www.perl.com

CPAN

About
Overview
Roadmap
Recent
Nearest CPAN Site
List of CPAN Sites

The Perl Language

Get the latest version of Perl (5.004_04).

Overview

Perl News
What is Perl?
What's New in Perl5?

Perl Software

Download Software
Documentation
FAQs
Support
Training
Bug Reports

Miscellaneous

The Perl Journal
The Perl Institute
Advocacy
Security
Who's Who?


Perl Reference

Search Perl Reference:
Books and Magazines
CGI
Communications
Conversion Utilities
CORBA
Courses and Training
(see the tutorials section for
Web-based courses)
Database
Debugging
Editors
Geographical Apps
Graphics and Imaging
HTTP
Lists
Macintosh
Mail and USENET News
Network Programming
Newsgroups
Object-Oriented Programming
Oddities
Porting
Programming
Regular Expressions
Releases
Screen I/O
Security
Sorting
Statistics
Style Guides
Sys Admin
Text Tools
Time
Tutorials
User Interfaces
Web Admin
Windows 3.1
Windows 95
Windows NT
O'Reilly logo

The Perl Developer Update

A Decade of Perl


Perl is Ten Years Old

Larry Wall shares with us some insight into the origins of Perl on the occasion of its birthday, officially December 18th, 1987.

Why is December 18th considered Perl's Birthday?

That is the day I turned Perl version 0 into Perl version 1, checked it in under RCS, and posted it to Usenet for the first time.

Where was its birth place and on what kind of machine?

Perl was born in Santa Monica, CA, on a VAX 11/780 running BSD. (Though gestation of Perl 0 was on a VAX 750.)  At the time I was working for Burroughs (soon to be Unisys).

What were your thoughts when you released it into the world?

I thought people would find Perl to be a vast improvement on sed and awk, and, to a lesser extent, the various shells.  I didn't hope to replace C, though there were a certain number of programmers who essentially abandoned C as soon as they had Perl.

I didn't, of course, anticipate the use of Perl to prototype the Web, but I basically understood that Perl would be successful, because I'd already had experience with rn and patch, and had a pretty good notion that other people would like the same things I like.

At what age did you begin to feel that Perl had a life apart from you? 

42.  :-)

You mean, as in the phrase "Get a life!"?  I dunno.  In a sense, it started having a life of its own as soon as I posted it to Usenet.  In another sense, it started having its own life when Perl 5 came out with an official extension mechanism.  But in yet another sense, Perl only started having its own life a year or so ago when I started letting other people take the lead in maintaining and developing it.  These days I'm in a mostly advisory role to Perl development, much like with my teenage daughter.  (As in, "No way am I gonna let you go out with that jerk!")

Is there a Mother of Perl?

I suppose there must be, since my wife's brother Mark Biggar claims to be the maternal uncle of Perl, but my wife Gloria has never insisted on being designated the Mother of Perl.  Perhaps it's her Protestant upbringing...
Do you have any birthday wishes to offer for Perl? If so, please send them to the editor and I will post them here.

Dates Set for 2nd Perl Conference

Several people have asked if O'Reilly has set the place and time for the next Perl Conference. Brian Erwin of O'Reilly was able to confirm that 1998 Perl Conference will once again be held at the Fairmont Hotel in San Jose.  The dates are August 17-20. We'll keep you posted as more information becomes available.

Note: If you need help selecting the right version of Perl for your computer, see our Latest file.

--- December 20, 1997

Previous Updates:

The Perl Developer Update will help to keep you informed of news and events happening here at www.perl.com and in the Perl community. It will also carry announcements of commercial products and services. If you have information for a future update, please send it to: Dale Dougherty.


www.perl.com is managed by Songline Studios on behalf of O'Reilly & Associates. www.perl.com is hosted on a Linux box running Apache (for machine specs, click here.) If you have comments or questions relating to the site (ie, not language related questions), please contact Dustin Mollo.
EOT # Split the HTML into suitable chunks @HTML = grep length, unpack(("a1024" x 1000), $HTML); #print length($HTML), "\n"; #print int(@HTML), "\n"; require 'benchlib.pl'; &runtest(0.004, <<'ENDTEST'); my $p = MyParser->new; for (@HTML) { $p->parse($_); } $p->eof; undef($p); ENDTEST #print "@MyParser::tags"; exit; #-------------------------------------------------------copy--------- package HTML::Parser; # $Id: htmlparser.t,v 1.3 1998/01/07 09:42:23 aas Exp $ use strict; #use HTML::Entities (); use vars qw($VERSION); $VERSION = sprintf("%d.%02d", q$Revision: 1.3 $ =~ /(\d+)\.(\d+)/); sub new { my $class = shift; my $self = bless { '_buf' => '', '_strict_comment' => 0, }, $class; $self; } # A note about how Netscape does it: # # It parse in the depreceated 'literal' mode, i.e. no tags are # recognized until a is found. # # is parsed like
, i.e. tags are recognized.  # are presentend in smaller font than 
#
# Netscape does not parse this comment correctly (it terminates the comment
# too early):
#
#     more comment -->
#
# Netscape does not allow space after the initial "<" in the start tag.
# Like this ""
#
# Netscape ignores '' within the