- Paperback: 300 pages
- Publisher: Pragmatic Bookshelf; 4 edition (October 29, 2015)
- Language: English
- ISBN-10: 1680500880
- ISBN-13: 978-1680500882
- Product Dimensions: 7.5 x 0.6 x 9.2 inches
- Shipping Weight: 12.6 ounces (View shipping rates and policies)
- Average Customer Review: 30 customer reviews
Amazon Best Sellers Rank:
#640,702 in Books (See Top 100 in Books)
- #38 in Books > Computers & Technology > Programming > Languages & Tools > Perl
- #147 in Books > Computers & Technology > Networking & Cloud Computing > Network Administration > Linux & UNIX Administration
- #201 in Books > Computers & Technology > Operating Systems > Linux > Networking & System Administration
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Modern Perl 4th Edition
Use the Amazon App to scan ISBNs and compare prices.
"Warlight" by Michael Ondaatje
A dramatic coming-of-age story set in the decade after World War II, "Warlight" is the mesmerizing new novel from the best-selling author of "The English Patient." Pre-order today
Frequently bought together
Customers who bought this item also bought
Customers who viewed this item also viewed
From the Publisher
Five Things Perl (Still) Gets Right by chromatic
In the late ’90s, I switched from Java to Perl because Perl made things easier. Perl let me get things done. Almost 20 years later, Perl still has a special place in my toolbox. I keep using it for certain projects because it still does some things so very well.
I can get many of these features from a lot of languages and platforms, and that’s great. Yet the combination available from Perl and its ecosystem keeps me coming back to the language.
The first serious program I wrote in Perl was a statistical analysis of random number sequences. It was last modified on February 26, 2003 and still runs, untouched. This program isn’t unique in its longevity. Most programs written to run even for Perl 3 or 4 will run today on Perl 5.22. In the 8 major and 38 minor stable releases of Perl since 2000, nearly any program written will run without modification. The expectation of compatibility guides people to keep existing code working.
Perl has a standard test suite that’s expected to pass on every platform with every commit. It has monthly unstable releases so that intrepid volunteer testers can test the CPAN--Perl’s large library of freely reusable third-party code--against the latest development versions.
A project called 'Bleadperl Breaks CPAN' bisect commits to Perl itself to find out exactly which change breaks which modules when something goes wrong. In practice, it’s possible to update an application to run on the newest release of Perl the day it’s released with no changes to your code. Just install the new version, install your module dependencies, and go.
Writing documentation as a programmer is like flossing: everyone knows they should do it, but most of us don’t do it often enough. Yet Perl’s documentation standard has set a bar that few other projects I’ve seen have ever matched. Perl set this standard early; it includes voluminous documentation of the language, core libraries, and even its expected documentation format. CPAN modules have a well-established standard for documentation, including running code you can often copy and paste and modify into your own programs.
One of Larry Wall’s early design goals was to fill the gap between one-off shell scripts and serious programs written in C. I like to think he took the ease of prototyping and low ceremony of shell scripting and combined it with the full power of Unix available from C.
If you plotted the sizes of all the programs I’ve written in the past couple of decades, you’d see a wide range: lots of one-liners, countless Unix filter scripts, and larger programs of tens of thousands or hundreds of thousands of lines. That’s not by accident; scalability of programmer effort is a deliberate goal of Perl that’s pervasive through much of the CPAN as well.
Perl’s been available on every professional system I’ve used in recent memory. It was quicker and easier to write a simple log parser in Perl on a new work laptop than to make sure I had all the development dependencies installed to install the correct other language dependencies to use the libraries I’d need there. (Though to be fair, I’m really good at writing simple log parsers after decades of Unix experience.)
Going from “I have a fresh account on a new machine” to “I can use Spreadsheet::WriteExcel to fill in the gaps of an existing spreadsheet just uploaded by a user” is easy--in part because I know all the pieces, but in part because I have confidence that they’re stable, well-tested, work together, and are available not just on my new laptop but on my server. I appreciate that Perl works and continues to work.
About the Author
Since 1998, chromatic has helped kick off the Perl testing revolution; contributed to the PerlMonks community from its origins; and wrote, edited, and reviewed many books and articles. He's contributed to Perl's current release structure, as well as Moose, Catalyst, Mojolicious, and p5p. He first released Modern Perl to the community in 2010.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
Perl and I used to have so much fun together. Back in the day (2000-2010), Perl was my right hand man. I used C/C++ and SQL to write project code, and Perl to analyze, automate, simulate, emulate, innovate, prototype, test, and generally blast obstacles out of the way. Some of my colleagues and managers were frightened of Perl - it was voodoo as far as they were concerned. A manager who clearly didn't get it chided me for bringing this Unix thing into his cozy little Windows shop, "Why would you use this Perl thing when you have Visual Basic available to you?" Yes, such a question can make one wince. However, Perl got results, quickly, and Perl culture was a blast.
I switched jobs, and found PowerShell had become the socially-acceptable scripting language for the Windows side, Python was the lingua franca for the Linux side, and Ruby was de rigeur for Chef for both sides. Absent a role, my old friend faded from view. Such is life in DevOps.
As it turns out, my old friend is now even more muscular, and still quite the party animal. However, this book shows that Perl has gotten some nice new features.
To be quite clear - this is NOT a book to use to learn Perl. Stick with the Llama book for that. This book assumes that you are using it to get reacquainted, and it succeeds wonderfully at that.
I can only describe it as a "textbook". If I had to pick a single book to teach Perl 5, this is the one I'd choose. As I read it, I was reminded of the first time I read K&R (C Programming Language) and how much learning was packed into it. (It's the only college programming text I still have). In a slim 250 pages, Modern Perl obsoletes most of my shelf of Perl 5 books. It's not intended for a complete novice to programming (any more than K&R was), but in the hands of a competent programmer or a diligent student it will teach everything that one needs to know to write Perl 5 well.
What I especially like about Modern Perl is that it puts particular emphasis on understanding fundamental Perl 5 concepts like "context" and "scope". From these and other foundations, one can understand why certain programming idioms have emerged and one can avoid surprises in the odder corners of the language. If you want a book to spoon feed cut-and-paste code to you, this is not the book for you. If you want a book that will teach you to write your own code confidently, this is an excellent resource.
If you already know some programming and want to learn Perl 5, then Modern Perl is the book you should get. If you already know Perl 5, but don't think you know it well, or if you haven't kept up in developments in Perl 5 since the late 1990's, then Modern Perl will get you up to speed.
There's significant coverage of Moose (for doing OOP in an arguably superior way), all manner of popular and useful idioms, and a rather thorough exposition of Perl language features, shortcomings, and gotchas.
In my opinion, this is not a book for beginners. The reader should already have a rudimentary grasp of Perl, and at least a small bit of experience working with it.
All in all, beautifully done content. But please enlist an editor to review the Kindle edition, guys. Too many unnecessary typos. And it looks like footnotes did not get rendered properly as footnotes, instead appearing inline with the content they're supposed to annotate. Annoying.
Thanks for writing such a fantastic book!
I don't like the fonts chosen for the examples. Reserved words such as while, for, and keys are not in bold type which makes them difficult to read.
My copy, published in October 2010 covers changes up to Version 5.12
Most recent customer reviews
Review Synopsis: Suffers from overcomplexity
It is very difficult or impossible to write a good book on Perl, because it...Read more
"Modern Perl" is phrase used to describe a style of Perl programming that...Read more