SlideShare a Scribd company logo
1 of 25
121 SW Morrison St #830, Portland OR 97204
                           www.stonehenge.com • info@stonehenge.com




Bird’s Eye View
     of Perl
 brian d foy <brian@stonehenge.com>
    Stonehenge Consulting Services

            May 11, 2007




                            Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




        About us
• Perl training since 1995
• Perl consulting
• Best selling books on Perl
 - Learning Perl
 - Intermediate Perl
 - Mastering Perl       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




   What is Perl?
• High-level computer language
• Created by Larry Wall
• Dynamic language
• Open source
• Make the easy things easy and
 the hard things possible
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                        www.stonehenge.com • info@stonehenge.com




Dynamic Languages

 • High level concepts
 • Program information, not computers
 • Don’t know things ahead of time
 • Flexible solutions for hard problems
                         Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




    Open Source

• Every one gets the source
• Not treated as intellectual property
• Anyone can fix a defect
• Anyone can analyze the source
                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                              www.stonehenge.com • info@stonehenge.com




     Coverity Scan
• Dept. of Homeland Security
 •   Identify and Remediate Existing
     Vulnerabilities
 •   Develop Systems with Fewer
     Vulnerabilities and Assess Emerging
     Technologies for Vulnerabilities


• “Of the LAMP stack, Perl had
 the best defect density”
                               Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




 Freely available
• No secret developer networks
• No delayed public releases
• Provided gratis
• Larry Wall holds the copyright
 • Keep free, available, useful
                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                     www.stonehenge.com • info@stonehenge.com




  Nothing to buy

• Code is normal text files
• No tools to buy
• Free tools available
• No support contracts necessary
                      Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




  History of Perl
• Created by Larry Wall
• Perl 1.0 released in 1987
 • system administration
• Perl 5.0 released in 1994
 • Web, retail, science
• CPAN created in 1995  Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                www.stonehenge.com • info@stonehenge.com




 Where is Perl?
•Science      •Education
•Finance      •Retail
•Government   •IT

                 Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                     www.stonehenge.com • info@stonehenge.com




     ADP Rockwell Automation
    America Online Arco Boeing
  Cisco Systems Cray Research
   Dow Chemical Genentech HP
        Intel Lehman Bros.
  Morgan Stanley Motorola NASA
 Nokia Qualcomm Silicon Graphics
   State Farm Insurance Texaco
Union Bank of Switzerland US Army
  State of New York World Bank
                      Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                        www.stonehenge.com • info@stonehenge.com




Why not use Perl?
• Air traffic control, nuclear
  reactors, medical equipment

• Real-time operating systems
• Because someone told you to
• It worked for something else
                         Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




  Why use Perl?
• Extremely easy text processing
• Report generation
• “Glue” language, tool chains
• Application prototyping
• Application development
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




“Unlike lots of other
  freely available
  software, Perl is
useful, and it works.”


“Electric metre”,
 The Economist, July 1, 1995
                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




  Cross-Platform

• Platform-independent
• Runs on over most platforms
• Windows, Linux, Unix, Mac

                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




One Implementation
 • Works on most platforms
 • Maintained by perl5-porters
 • Core group of about 30 people
 • ActiveState handles Windows
  support

 • Rigorously tested
                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




Rapid Prototyping

• Go from coding to running quickly
• Make proof-of-concept
• Quickly implement changes
• Often good enough for production
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




   Perl Mongers

• Conferences & Hackathons
• Key community members meet often
• Although distributed, a lot of people
  know each other personally


                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




           CPAN
• Comprehensive Perl Archive Network
• Perl’s killer feature
• Started in 1995
• Over 10,000 modules
• Module maintenance process
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




  Issue tracking
• http://rt.cpan.org
• RT from Best Practical
• Perl module issue tracker
• Automatically configured for all
  modules


                        Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




   Current state
• In active development
• Maintenance track
• Experimental track
• Currently at Perl 5.8.8
• Perl 5.10 around the corner
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




    Future plans

• Perl 6 in development
• A language for the next 20 years
• Completely new language
• Perl 5 is not disappearing
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                         www.stonehenge.com • info@stonehenge.com




   CPAN Testers
• http://testers.cpan.org
• Every CPAN upload
  automatically tested

• Different Perl versions, platforms
• Hundreds of tests each day
                          Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                      www.stonehenge.com • info@stonehenge.com




       Kwalitee

• http://cpants.perl.org
• Distribution quality
• Dependency tracking
• Friendly competitiveness
                       Copyright 2007, Stonehenge Consulting Services
121 SW Morrison St #830, Portland OR 97204
                       www.stonehenge.com • info@stonehenge.com




      Conclusion
• Perl is useful
• It’s widely used
• It’s actively supported
• It has a committed community
• Perl might be right for the problem
                        Copyright 2007, Stonehenge Consulting Services

More Related Content

More from brian d foy

20 years in Perl
20 years in Perl20 years in Perl
20 years in Perlbrian d foy
 
PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)brian d foy
 
Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)brian d foy
 
Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)brian d foy
 
Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)brian d foy
 
6 more things about Perl 6
6 more things about Perl 66 more things about Perl 6
6 more things about Perl 6brian d foy
 
6 things about perl 6
6 things about perl 66 things about perl 6
6 things about perl 6brian d foy
 
Perl 5.28 new features
Perl 5.28 new featuresPerl 5.28 new features
Perl 5.28 new featuresbrian d foy
 
Parsing JSON with a single regex
Parsing JSON with a single regexParsing JSON with a single regex
Parsing JSON with a single regexbrian d foy
 
Reverse Installing CPAN
Reverse Installing CPANReverse Installing CPAN
Reverse Installing CPANbrian d foy
 
Advanced modulinos
Advanced modulinosAdvanced modulinos
Advanced modulinosbrian d foy
 
Advanced modulinos trial
Advanced modulinos trialAdvanced modulinos trial
Advanced modulinos trialbrian d foy
 
Tour of the Perl docs
Tour of the Perl docsTour of the Perl docs
Tour of the Perl docsbrian d foy
 
Create and upload your first Perl module to CPAN
Create and upload your first Perl module to CPANCreate and upload your first Perl module to CPAN
Create and upload your first Perl module to CPANbrian d foy
 
Perl Conferences for Beginners
Perl Conferences for BeginnersPerl Conferences for Beginners
Perl Conferences for Beginnersbrian d foy
 
Backward to DPAN
Backward to DPANBackward to DPAN
Backward to DPANbrian d foy
 
Perl docs {sux|rulez}
Perl docs {sux|rulez}Perl docs {sux|rulez}
Perl docs {sux|rulez}brian d foy
 

More from brian d foy (20)

20 years in Perl
20 years in Perl20 years in Perl
20 years in Perl
 
PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)
 
Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)
 
Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)
 
Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)
 
6 more things about Perl 6
6 more things about Perl 66 more things about Perl 6
6 more things about Perl 6
 
6 things about perl 6
6 things about perl 66 things about perl 6
6 things about perl 6
 
Perl 5.28 new features
Perl 5.28 new featuresPerl 5.28 new features
Perl 5.28 new features
 
Parsing JSON with a single regex
Parsing JSON with a single regexParsing JSON with a single regex
Parsing JSON with a single regex
 
Reverse Installing CPAN
Reverse Installing CPANReverse Installing CPAN
Reverse Installing CPAN
 
Advanced modulinos
Advanced modulinosAdvanced modulinos
Advanced modulinos
 
Advanced modulinos trial
Advanced modulinos trialAdvanced modulinos trial
Advanced modulinos trial
 
Bag of tricks
Bag of tricksBag of tricks
Bag of tricks
 
I ❤ CPAN
I ❤ CPANI ❤ CPAN
I ❤ CPAN
 
Tour of the Perl docs
Tour of the Perl docsTour of the Perl docs
Tour of the Perl docs
 
Create and upload your first Perl module to CPAN
Create and upload your first Perl module to CPANCreate and upload your first Perl module to CPAN
Create and upload your first Perl module to CPAN
 
Perl Conferences for Beginners
Perl Conferences for BeginnersPerl Conferences for Beginners
Perl Conferences for Beginners
 
Backward to DPAN
Backward to DPANBackward to DPAN
Backward to DPAN
 
Perl docs {sux|rulez}
Perl docs {sux|rulez}Perl docs {sux|rulez}
Perl docs {sux|rulez}
 
Why I Love CPAN
Why I Love CPANWhy I Love CPAN
Why I Love CPAN
 

Recently uploaded

ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...FIDO Alliance
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Skynet Technologies
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe中 央社
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch TuesdayIvanti
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimaginedpanagenda
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfUK Journal
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireExakis Nelite
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxFIDO Alliance
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideStefan Dietze
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandIES VE
 

Recently uploaded (20)

ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 

Birds Eye View Of Perl

  • 1. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Bird’s Eye View of Perl brian d foy <brian@stonehenge.com> Stonehenge Consulting Services May 11, 2007 Copyright 2007, Stonehenge Consulting Services
  • 2. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com About us • Perl training since 1995 • Perl consulting • Best selling books on Perl - Learning Perl - Intermediate Perl - Mastering Perl Copyright 2007, Stonehenge Consulting Services
  • 3. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com What is Perl? • High-level computer language • Created by Larry Wall • Dynamic language • Open source • Make the easy things easy and the hard things possible Copyright 2007, Stonehenge Consulting Services
  • 4. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Dynamic Languages • High level concepts • Program information, not computers • Don’t know things ahead of time • Flexible solutions for hard problems Copyright 2007, Stonehenge Consulting Services
  • 5. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Open Source • Every one gets the source • Not treated as intellectual property • Anyone can fix a defect • Anyone can analyze the source Copyright 2007, Stonehenge Consulting Services
  • 6. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Coverity Scan • Dept. of Homeland Security • Identify and Remediate Existing Vulnerabilities • Develop Systems with Fewer Vulnerabilities and Assess Emerging Technologies for Vulnerabilities • “Of the LAMP stack, Perl had the best defect density” Copyright 2007, Stonehenge Consulting Services
  • 7. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Freely available • No secret developer networks • No delayed public releases • Provided gratis • Larry Wall holds the copyright • Keep free, available, useful Copyright 2007, Stonehenge Consulting Services
  • 8. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Nothing to buy • Code is normal text files • No tools to buy • Free tools available • No support contracts necessary Copyright 2007, Stonehenge Consulting Services
  • 9. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com History of Perl • Created by Larry Wall • Perl 1.0 released in 1987 • system administration • Perl 5.0 released in 1994 • Web, retail, science • CPAN created in 1995 Copyright 2007, Stonehenge Consulting Services
  • 10. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Where is Perl? •Science •Education •Finance •Retail •Government •IT Copyright 2007, Stonehenge Consulting Services
  • 11. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com ADP Rockwell Automation America Online Arco Boeing Cisco Systems Cray Research Dow Chemical Genentech HP Intel Lehman Bros. Morgan Stanley Motorola NASA Nokia Qualcomm Silicon Graphics State Farm Insurance Texaco Union Bank of Switzerland US Army State of New York World Bank Copyright 2007, Stonehenge Consulting Services
  • 12. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Why not use Perl? • Air traffic control, nuclear reactors, medical equipment • Real-time operating systems • Because someone told you to • It worked for something else Copyright 2007, Stonehenge Consulting Services
  • 13. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Why use Perl? • Extremely easy text processing • Report generation • “Glue” language, tool chains • Application prototyping • Application development Copyright 2007, Stonehenge Consulting Services
  • 14. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com “Unlike lots of other freely available software, Perl is useful, and it works.” “Electric metre”, The Economist, July 1, 1995 Copyright 2007, Stonehenge Consulting Services
  • 15. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Cross-Platform • Platform-independent • Runs on over most platforms • Windows, Linux, Unix, Mac Copyright 2007, Stonehenge Consulting Services
  • 16. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com One Implementation • Works on most platforms • Maintained by perl5-porters • Core group of about 30 people • ActiveState handles Windows support • Rigorously tested Copyright 2007, Stonehenge Consulting Services
  • 17. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Rapid Prototyping • Go from coding to running quickly • Make proof-of-concept • Quickly implement changes • Often good enough for production Copyright 2007, Stonehenge Consulting Services
  • 18. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Perl Mongers • Conferences & Hackathons • Key community members meet often • Although distributed, a lot of people know each other personally Copyright 2007, Stonehenge Consulting Services
  • 19. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com CPAN • Comprehensive Perl Archive Network • Perl’s killer feature • Started in 1995 • Over 10,000 modules • Module maintenance process Copyright 2007, Stonehenge Consulting Services
  • 20. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Issue tracking • http://rt.cpan.org • RT from Best Practical • Perl module issue tracker • Automatically configured for all modules Copyright 2007, Stonehenge Consulting Services
  • 21. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Current state • In active development • Maintenance track • Experimental track • Currently at Perl 5.8.8 • Perl 5.10 around the corner Copyright 2007, Stonehenge Consulting Services
  • 22. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Future plans • Perl 6 in development • A language for the next 20 years • Completely new language • Perl 5 is not disappearing Copyright 2007, Stonehenge Consulting Services
  • 23. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com CPAN Testers • http://testers.cpan.org • Every CPAN upload automatically tested • Different Perl versions, platforms • Hundreds of tests each day Copyright 2007, Stonehenge Consulting Services
  • 24. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Kwalitee • http://cpants.perl.org • Distribution quality • Dependency tracking • Friendly competitiveness Copyright 2007, Stonehenge Consulting Services
  • 25. 121 SW Morrison St #830, Portland OR 97204 www.stonehenge.com • info@stonehenge.com Conclusion • Perl is useful • It’s widely used • It’s actively supported • It has a committed community • Perl might be right for the problem Copyright 2007, Stonehenge Consulting Services