Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Perl Introduction
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ynonperek
December 21, 2011
Programming
690
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Perl Introduction
Welcome To Perl
ynonperek
December 21, 2011
More Decks by ynonperek
See All by ynonperek
QtRuby for Qt Developers
ynonperek
0
350
Qt Hybrid Apps
ynonperek
1
330
QtRuby In Action
ynonperek
1
200
Cool CPAN Modules
ynonperek
2
680
Advanced Perl Moose
ynonperek
4
2.7k
Ruby Desktop Apps with Qt
ynonperek
1
660
Perl Golf
ynonperek
4
2.3k
git
ynonperek
3
880
Concurrency In Qt Applications
ynonperek
1
440
Other Decks in Programming
See All in Programming
Seven New Principles of Software Engineering
yegor256
0
430
オーケストレーション記述言語 Katari
yukikurage
0
220
AmebaブログはKMPから卒業します
kmars0605
0
310
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
600
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
400
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
400
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
210
Coding with AI: How to trust the storyteller (AWS Community Day Adria, Ljubljana 2026)
slobodan
0
140
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
250
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
3
1.4k
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
5.1k
私なりのハーネスエンジニアリング ~独自の言語処理系の開発を通して~
seosoft
0
170
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
380
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
320
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
500
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
370
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
47k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
600
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
340
Transcript
PERL Keeping Developers Happy Since 1987 Wednesday, December 21, 2011
AGENDA Perl’s 7 Wonders The Perl Story Online Resources Wednesday,
December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
SIMPLE print “Hello World” Wednesday, December 21, 2011
PERL KEY IDEAS Loosely Typed Powerful Text Processing Capabilities Simple:
Write Only What You Need Creative: There’s more than one way to do it Modern Object Oriented and Maintainable Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
OO PERL use MooseX::Declare; class Person { has ‘name’, isa
=> ‘String’, is => ‘ro’; has ‘age’, isa => ‘Num’, is => ‘rw’; } Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
TDD PERL Perl is very TDD friendly Writing a test
case is a breeze Results in clean code Wednesday, December 21, 2011
TDD PERL A Unit Test In Perl use Test::More; is(
power(2, 3), 8 ); done_testing; Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
CPAN CPAN is an archive of over 20,000 modules of
perl software. CPAN modules are actively maintain and developed by the community, and for the community. CPAN is also a command line tool to automatically install modules from the archive. Wednesday, December 21, 2011
CPAN Useful CPAN Modules: Spreadsheet::ParseExcel, Spreadsheet::WriteExcel Log::Fine, Log::Fast, Log::Tiny DBIx::Class,
Moose, Dancer Try::Tiny, File::Slurp CPAN provides the tools to focus on YOUR problem. Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
PERL IS WEIRD The Spaceship Operator <=> Wednesday, December 21,
2011
PERL IS WEIRD The inchworm Operator ~~ Wednesday, December 21,
2011
PERL IS WEIRD use Acme::Labs; BRAIN: "Pinky, are you pondering
what I'm pondering?" PINKY: "I think so, Brain, but first you'd have to take that whole bridge apart, wouldn't you?" zort eGAD ZORt zOrt egAD " nARf EGaD EgAD egAD NARF zOrt Zort egAD zorT ZOrT eGAD narf ZOrT eGAD zoRt narF ZORT ZoRT ZoRt ZOrT eGAD\ zOrt"; Valid Perl Wednesday, December 21, 2011
PERL IS WEIRD Valid Perl Wednesday, December 21, 2011
PERL IS WEIRD And it can even count therbligs use
Acme::Mobile::Therbligs; print count_therbligs(“hello world”); Will print 26 Valid Perl Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
PERL IS EVERYWHERE Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
PERL MONGERS AROUND THE WORLD Wednesday, December 21, 2011
CHOOSE PERL Simplicity Object Oriented Test Driven CPAN Weird Perl
is Everywhere The Perl Community Wednesday, December 21, 2011
THE PERL STORY Wednesday, December 21, 2011
PERL HISTORY Dec. 18, 1987. Perl 1.0 Wednesday, December 21,
2011
PERL HISTORY June 5, 1988. Perl 2.0 Add Henry Spencer’s
Regexp Library Wednesday, December 21, 2011
PERL HISTORY Oct 18, 1989. Perl 3.0. Add Support for
Binary Data Wednesday, December 21, 2011
PERL HISTORY Mar 21, 1991. Perl 4.0 Not too much
happened, as Larry describes: “We mostly just switched version numbers so the book could refer to 4.0” Wednesday, December 21, 2011
PERL HISTORY Oct 18, 1994. Perl 5.0 Everything Else Wednesday,
December 21, 2011
MODERN PERL Clean Readable Object Oriented Uses CPAN Wednesday, December
21, 2011
PERL FUTURE Perl 6, After christmas. Type System Formal Subroutine
Parameters Moose-like OO Wednesday, December 21, 2011
PERL CULTURE - HAIKU no less can I say; require
strict, close attention while you ... write haiku Wednesday, December 21, 2011
PERL CULTURE - HAIKU ugliness that grows into beauty inside
of your favorite shell Wednesday, December 21, 2011
PERL CULTURE - HAIKU I often think of Perl programs
as the haiku of the software world. Both are compact, dense, powerful, and frequently a little obscure Wednesday, December 21, 2011
PERL CULTURE - JAPH print “just another perl hacker”; Wednesday,
December 21, 2011
PERL CULTURE - JAPH $_=‘987;s/^(\d+)/$1-1/e;$1?eval:print”Just Another Perl Hacker”; eval; Wednesday,
December 21, 2011
PERL CULTURE - JAPH $_="krJhruaesrltre c a cnP,ohet"; $_.=$1,print$2while s/(..)(.)//;
Wednesday, December 21, 2011
PERL ONLINE RESOURCES Modern Perl Book http://www.onyxneon.com/books/modern_perl/ index.html Israel Perl
Mongers http://perl.org.il/ Wednesday, December 21, 2011
THANK YOU Ynon Perek
[email protected]
https://github.com/ynonp/ Adv-Perl-Examples ynonperek.com Wednesday, December
21, 2011