- Paperback: 390 pages
- Publisher: O'Reilly Media; Sixth Edition edition (July 1, 2011)
- Language: English
- ISBN-10: 1449303587
- ISBN-13: 978-1449303587
- Product Dimensions: 7 x 0.8 x 9.2 inches
- Shipping Weight: 1.4 pounds (View shipping rates and policies)
- Average Customer Review: 4.4 out of 5 stars See all reviews (100 customer reviews)
- Amazon Best Sellers Rank: #58,408 in Books (See Top 100 in Books)
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.
Learning Perl Sixth Edition Edition
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
O'Reilly Brand Store
Visit O'Reilly Media and discover what's new and bestselling. See more
Frequently bought together
Customers who bought this item also bought
Making Easy Things Easy and Hard Things Possible
About the Author
Randal L. Schwartz is a two-decade veteran of the software industry. He is skilled in software design, system administration, security, technical writing, and training. Randal has coauthored the "must-have" standards: Programming Perl, Learning Perl, Learning Perl for Win32 Systems, and Effective Perl Learning, and is a regular columnist for WebTechniques, PerformanceComputing, SysAdmin, and Linux magazines.
He is also a frequent contributor to the Perl newsgroups, and has moderated comp.lang.perl.announce since its inception. His offbeat humor and technical mastery have reached legendary proportions worldwide (but he probably started some of those legends himself). Randal's desire to give back to the Perl community inspired him to help create and provide initial funding for The Perl Institute. He is also a founding board member of the Perl Mongers (perl.org), the worldwide Perl grassroots advocacy organization. Since 1985, Randal has owned and operated Stonehenge Consulting Services, Inc. Randal can be reached for comment at firstname.lastname@example.org or (503) 777-0095, and welcomes questions on Perl and other related topics.
brian d foy is a prolific Perl trainer and writer, and runs The Perl Review to help people use and understand Perl through educational, consulting, code review, and more. He's a frequent speaker at Perl conferences. He's the co-author of Learning Perl, Intermediate Perl, and Effective Perl Programming, and the author of Mastering Perl. He was been an instructor and author for Stonehenge Consulting Services from 1998 to 2009, a Perl user since he was a physics graduate student, and a die-hard Mac user since he first owned a computer. He founded the first Perl user group, the New York Perl Mongers, as well as the Perl advocacy nonprofit Perl Mongers, Inc., which helped form more than 200 Perl user groups across the globe. He maintains the perlfaq portions of the core Perl documentation, several modules on CPAN, and some stand-alone scripts.
Tom Phoenix has been working in the field of education since 1982. After more than thirteen years of dissections, explosions, work with interesting animals, and high-voltage sparks during his work at a science museum, he started teaching Perl classes for Stonehenge Consulting Services, where he's worked since 1996. Since then, he has traveled to many interesting locations, so you might see him soon at a Perl Mongers' meeting. When he has time, he answers questions on Usenet's comp.lang.perl.misc and comp.lang.perl.moderated newsgroups, and contributes to the development and usefulness of Perl. Besides his work with Perl, Perl hackers, and related topics, Tom spends his time on amateur cryptography and speaking Esperanto. His home is in Portland, Oregon.
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
The book is intended to introduce the basic elements of Perl in a tutorial fashion. It does not teach programming, and essentially provides the reader with enough language tools to create short Perl scripts. Most examples are straightforward and easily absorbed, although they are somewhat artificial (Flintstones characters aren't usually the subjects of Perl scripts).
Each chapter ends with exercises, which are really essential for the beginner to complete - this is where you actually use the language elements and learn to incorporate them into a larger program.
Users who do best working through a single example and building it into a working program may not enjoy this book, due to it's "bottom-up" approach to Perl. Without prior Perl experience, you will finish the book having a strong grasp of the building blocks used by the language ( variables, loops, etc .), but will need further reading to round out your education and produce more complex programs. That is not a negative reflection on the book or it's context, just a recognition that the approach used is not for everyone.
Overall, excellent work from a highly respected and experienced team of Perl trainers, well worth the time invested by the reader.
This book did not disappoint. It's been excellent. It takes a very practical approach to educating the reader on the mechanics of Perl, focusing on cumulative knowledge as the chapters move along. The text is reasonably engaging, and the material moves at a good pace - not too fast and not too slow. The exercises at the end of the chapters help reinforce the material, and even includes estimates of how long the programming should take. It clearly articulates differences between Perl versions without droning on incessantly about tiny nuances. It is riddled with footnotes for more advanced users to help them understand more and more exceptions to basic rules, as they are initially taught by the text.
To be clear, this book isn't a book that teaches how to program. If you're looking for something that covers procedural logic, this is not the book for you. However, I would suspect that even someone without a deep computer background, but just a strong willingness to learn, would find this book beneficial.
If you ARE a programmer, you might find it a bit novice, and the pace a little slow - maybe not though, maybe you should just absorb the material faster and fly through the chapters. It's hard for me to say.
It was exactly what I was looking for, and after some more practice, I believe I may be moving on to Intermediate Perl.
Chapter 1. Introduction
This chapter answers basic questions such as how to get and install Perl, how to construct a basic Perl program, and then takes you on a whirlwind tour of Perl.
Chapter 2. Scalar Data
As a general rule, when Perl has just one of something, that's a scalar, which is the topic of this chapter.
Chapter 3. Lists and Arrays
If a scalar is the "singular" in Perl, as described at the beginning of Chapter 2, the "plural" in Perl is represented by lists and arrays. A list is an ordered collection of scalars. An array is a variable that contains a list. In Perl, the two terms are often used as if they're interchangeable. But, to be accurate, the list is the data, and the array is the variable. You learn about these differences through practical code examples in this chapter.
Chapter 4. Subroutines
You've now seen and used some of the built-in system functions, such as chomp, reverse, and print. But, as other languages do, Perl has the ability to make subroutines. The name of a subroutine is another Perl identifier occasionally with an optional ampersand in front. There's a rule about when you can omit the ampersand and when you cannot, and that rule is discussed.
Chapter 5. Input and Output
This chapter covers the 80% of the I/O you'll need for most programs. If you're familiar with the workings of standard input, output, and error streams, you're ahead of the game. If not, you get you caught up by the end of this chapter.
Chapter 6. Hashes
In this chapter, you will see a feature that makes Perl one of the world's great programming languages--hashes. Though hashes are a powerful and useful feature, you may have used other powerful languages for years without ever hearing of hashes. But you'll use hashes in nearly every Perl program you'll write from now on; they're that important.
A hash is a data structure like an array, in that it can hold any number of values and retrieve these values at will. However, instead of indexing the values by number, as in arrays, you look up the values by name. That is, the indices aren't numbers but are arbitrary unique strings.
Chapter 7. In the World of Regular Expressions
Perl has many features that set it apart from other languages. Of all those features, one of the most important is its strong support for regular expressions. These allow fast, flexible, and reliable string handling. But that power comes at a price. Regular expressions are tiny programs in their own special language, built inside Perl. This means that you're about to learn another programming language, although, fortunately, it's a simple one. In this chapter, you'll visit the world of regular expressions, where, for the most part, you can forget about the world of Perl.
Chapter 8. Matching with Regular Expressions
In the previous chapter, you visited the world of regular expressions. Now you'll see how that world fits into the world of Perl.
Chapter 9. Processing Text with Regular Expressions
You can use regular expressions to change text, too. So far, the book has only shown you how to match a pattern. Now, you'll learn how to use patterns to locate the parts of strings that you want to change.
Chapter 10. More Control Structures
In this chapter, you'll see some alternative ways to write Perl code. For the most part, these techniques don't make the language more powerful, but they make it easier or more convenient to get the job done. You don't have to use these techniques in your own code, but don't skip this chapter. You're certain to see these control structures in other people's code, sooner or later.
Chapter 11. File Tests
Earlier, this book showed how to open a filehandle for output. Normally, that will create a new file, wiping out any existing file with the same name. Perhaps you want to check that there isn't a file by that name. Perhaps you need to know how old a given file is, or perhaps you want to go through a list of files to find which ones are larger than a certain number of bytes and not accessed for a certain amount of time. Perl has a complete set of tests you can use to find information about files, and that is the topic of this chapter.
Chapter 12. Directory Operations
The files created in the previous chapter were generally in the same place as your program. But modern operating systems let you organize files into directories, allowing you to keep your MP3 files away from your important work files so you don't accidentally send an MP3 file to your boss. In this chapter you'll see how Perl lets you manipulate these directories directly, in ways that are even fairly portable from one operating system to another.
Chapter 13. Strings and Sorting
Perl is designed to be good at solving programming problems that are about 90% working with text and 10% everything else. So it's no surprise that Perl has strong text-processing abilities, including all that can be done with regular expressions. But sometimes the regular expression engine is too fancy, and you need a simpler way of working with a string, as you'll see in this chapter.
Chapter 14. Process Management
One of the best parts of being a programmer is launching someone else's code so you don't have to write it yourself. This chapter shows how to manage your child processes by launching other programs directly from Perl. The examples in this chapter are primarily Unix-based; if you have a non-Unix system, expect to see some differences.
Chapter 15. Perl Modules
There is a lot more to Perl than what is in this book, and there are a lot of people doing a lot of interesting things with Perl. If there is a problem to solve, then somebody has probably already solved it and made their solution available on the Comprehensive Perl Archive Network (CPAN), which is a worldwide collection of servers and mirrors containing thousands of modules of reusable Perl code. If you want to learn how to write modules, consult the "Alpaca book". In this chapter, you learn how to use modules that already exist.
Chapter 16. Some Advanced Perl Techniques
The techniques in this chapter are only "advanced" in the sense that they aren't necessary for beginners. The first time you read this book, you may want to either skip or skim this chapter so you can get right to using Perl. Then come back to it later when you're ready to get more out of Perl.
Appendix A - Exercise Answers
Appendix B - Beyond the Llama
This books provides a wonderful, quick, easy read for beginners and pros alike. The knowledge of the language coupled with the coverage of core concepts, methodology, practices and practical programmatic thinking was a delight to read/review.