Top
Past Meeting Archive Los Angeles ACM home page National ACM home page Click here for More Activities this month
Check out the Southern California Tech Calendar

Joint Meeting of
 Los Angeles ACM Chapter
 and the
Special Interest Group in Programming Languages (SIGPLAN)

Wednesday, December 5, 2001

"Perl 6"

Presented by Samy Kamkar,
Chairman of the LA Perl User Group

Samy Kamkar will speak about the widely-used programming language, Perl, what it is, how it's used in the world today, and more specifically about Perl 6, where it stands now, and where it's going. This will not be a technical talk, but more on why Perl 6 is coming, its capabilities, and what will be good about it compared to other languages.

There has already been a lot of effort put into the development of Perl 6 by the Perl community and he will go over some of the responsibilities of the community and the documents already out there. These include the Apocalypses (columns that describe the design of Perl 6) by Larry Wall (the founder of Perl) and the Exegeses, Damian Conway's responses, along with a few of the basic RFCs and the responses to them. He will also describe Parrot, a "virtual machine used to efficiently execute bytecode for interpreted languages". It will be the core of the Perl interpreter.

Perl 6 has the potential to become a great stronghold for the Internet and to programmers, because of the impact that Perl programmers, themselves, have on the redesign.

Samy Kamkar began his career in programming five years ago in Pittsburgh when he started developing Web pages. Soon, needing more power to fuel the sites, he turned to Perl and UNIX, a strong combination. Since then, he has been consistently developing powerful Perl applications such as low-level network monitors and other tools in the computer and network security fields.  Mr. Kamkar is currently looking into working on the internals of Parrot and Perl 6. Two years ago, he moved to Los Angeles and started up the LA chapter of Perl Mongers, a users group for Perl developers in the Los Angeles area and have continued to develop LucidX -- one day to be a company providing wireless voice and data strategies to corporations -- as his project repository.


"Perl 6"

The presentation was by Samy Kamkar, the Chair of the LA Chapter of Perl Mongers. This was a joint December meeting of the Los Angeles Chapter of ACM and the Special Interest Group in Programming Languages (SIGPLAN). Samy said that 4 or 5 years ago he worked in html, but needed more capabilities for his sites. He looked at Java and ran. He decided he needed something simple and found the Practical Extraction and Report Language (Perl). Everybody has been working on Perl 6 lately so this will be the main subject covered. Perl is a language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. It's also a good language for many system management tasks. The language is intended to be practical (easy to use, efficient, complete) rather than beautiful (tiny, elegant, minimal). Larry Wall originally developed Perl and maintains it with a large supporting cast. Perl allows you to do almost anything that you would be able to do in a language such as C or C++. When it doesn't, it allows you to write modules or even embed code in C/C++/other languages, as well, inside of your own Perl code. Larry Wall provide a brief history of Perl as Perl 0 when he introduced it to his officemates, 1 when it was introduced to the world in 1987, 2 when it introduced Henry Spencer's regular expression language in 1988, 3 introduced the ability to handle binary data in 1989, 4 introduced the first Camel book in 1989 and 5 introduced everything else, including the ability to introduce everything else. Currently Perl 5 is the main language, but everyone is working on Perl 6. Perl is a powerful language, and many people feel strongly about that, but you're not going to want to use it to write an operating system. (Oddly enough, it has been done.) Samy discussed the tool called Parrot which apparently started out with an April Fool's joke about merging the power of Perl and the sanity of Python, claiming that Py3K and Perl 6 development were merging. (Note: This seems to be some kind of insider joke). A quote from Parrot's official web site: "Parrot is a virtual machine used to efficiently execute bytecode for interpreted languages- specifically Perl 6, although we would like to keep the door open for other languages in the future. As such, Parrot will be the core of the Perl interpreter, it will be the target platform to which Perl 6 code is compiled." The source code was released September 10, 2001 (version 0.0.1) and work is being done on it daily. The goals of Perl 6 are speed, cleanliness, compatibility, thread safety, modularity and flexibility. Perl 5 was fairly slow and was a "quick and dirty" development. Some of the internal code scares away potential developers and it is difficult to make additions. Perl 5 did easy things easily and made impossible things doable, but hard. Perl 6 should make easy things easier and hard things easy. Larry Wall said "Perl 5 was my rewrite of Perl, I want Perl 6 to be the community's rewrite of Perl and of the community." All of Perl is Open Source software. Development is continuing on Perl 6 and Parrot. Perl is used on the server side and is used in web development. It is easy to use, provides good support for databases and can be inserted into HTML code. Perl is used by system administrators, biologists, and the census bureau uses it to sort data. How can you learn about Perl? Samy recommends O'Reilly's Learning Perl, 3rd Edition, by Randal L. Schwartz and Tom Phoenix or Programming Perl by Larry Wall, Tom Christiansen and Jon Orwant.

Some useful websites are:
www.perl.com - O'Reilly's Perl site.
dev.perl.org -Perl 6's development page
la.pm.org-Los Angeles Perl Monger
www.pm.org - Perl Mongers
history.perl.org - CPAST-the history of Perl
www.tpj.com - The Perl Journal
www.perlmonks.org - Perl help
www.wall.org - Larry Wall's homepage
www.lucidx.com - Samy Kamkar's homepage
www.perldoc.com - Perl Documentation
www.yapc.org - Yet another Perl Conference
www.geekcruises.com - Perl Whirl and other conferences aboard ships.

There is much good explanatory material that is easy to read and provides good explanations of the history of Perl and how it was developed. You can read this before deciding on how deep you wish to delve into the massive amount of technical information provided. excellent presentation by Samy Kamkar who knows his subject well and made an excellent presentation. It was Dan Faigin, of our chapter, who enabled this talk for which we are very grateful.
Mike Walsh, LA ACM Secretary

****************

Past Meeting Archive Los Angeles ACM home page National ACM home page Top

 Last revision: 2001 1221 [Webmonster]