
Good Intro to Perl for Unix hackers onlyThere are 2 sets of reviewers rating this book. The first set, who compose the majority of reviewers, are experienced Unix programmers who have used sed, awk, grep and the various Unix shells. For those Unix hackers, this book is a great intro to Perl because it covers the basics of the language quickly and efficiently without belaboring the obvious (or I should say, the obvious to experienced Unix users).
The second set of reviewers (of which I am one), who have just about universally panned this book, are Windows or Mac users who had no clue what sed, awk and grep were and then attempted to tackle Perl with this book. For those people, this book is a big mistake.
When I was searching for a beginning Perl book, I flipped through the llama book and got confused not only by the first chapter, but with several of the succeeding chapters as well. I learned Perl with Laura LeMay's "Teach Yourself Perl in 21 Days" which is a much gentler intro to Perl and also covers Perl in Windows and the Mac. Now that I have some Perl and Linux experience, I went back to the bookstore and started flipping through the llama again, and this time I thought, "Hey this book is really good."
Learn from my Jekyll and Hyde experience with the llama: if you are trying to learn Perl and you have previous Unix experience, buy the book. If you don't have previous Unix experence, get something else.
I hope this explanation clears up why some people gave this book rave reviews while others ripped it.
Buy the camel, but read the llama firstExcellent.
I came to this book knowing next to nothing about Perl, and with a few misconceptions to boot (that Perl's syntax is 'write-only', it's primarily a CGI tool, etc.), and now I am not sure that epiphany would cover it. In 12 years of learning and using programming languages, I don't think I have come across anything so enchanting.
One of the best parts of the book: the authors. Add Schwartz & Christiansen to Elliotte Rusty Harold, Petzold, and a very few others who are truly effective technical writers. Classic O'Reilly easygoing style, never condescending, and eerily consistent in presenting just the right amount of information on the given topic.
Every programmer (even non-Perl ones) should read 'Programming Perl' by Larry Wall. But to learn Perl, and take the first step down a long and magical road, buy this book.
I had a few nits, but by the time I finished the book, I had forgotten most of them. As close to 5 stars as I will ever give for a technical book.
Yes, it works for Windows 98 users too! =)Before I buy this book, I was reading the reviews in this site and I was particularly concerned about the requirement of an UNIX-based OS. Since my only workstation is a PC running Windows, I was very uncertain about buying this book, despite the great review.
Now, listen up.
-I only know the basics of C++ programming;
-I do not know anything about UNIX OS;
-I create websites using HTML and JavaScripts;
-This book help me understand enough about Perl to write my own CGI scripts and run them on the Internet!!! (I've got 3 forums running now and several voting sections!)
If you are a pure Windows user, like myself, but would like to learn the basics of Perl, get this book, period!
Now the cons: As mentioned with so many reviews, this book is very brief. Although I was stuck in chapter for 1 week (!!!), I "fly" through the rest of the chapters in 2-3 days! The biggest problem I find is the lack of adequate explanation for each operators, regular expressions, etc. When writing my own CGI, I have to continuously look for alternative sources of Perl references to clear up my queries and help me to understand a few particular properties of Perl.
For example, I have to use the s///; and the tr///; many times in my scripts, but without extensive understanding of all their properties, I find it "crippling" to my work.
Enough said. For an introduction to Perl, I would give this book 5 stars. If you hunger for much more information, like myself, get this book first, before trying out the lastest Programming Perl (3rd Edition).
Excellent first stepThis book is an excellent way to ramp up on Perl quickly. It takes you through the in's and out's of Perl at a wonderful pace and covers most of what you need to know. This is the book to get if you're new to Perl and need to learn it quickly. The 200 or so pages are readable in less than a week.
However, there are a few important things to note. This is not a standalone book. You will need to get the Programming in Perl book as well to serve as a reference guide. Also, this book assumes basic Unix knowledge. If you have no exposure to Unix, a couple of things (very minor though) might be a bit baffling. If you've played with Unix, then this book is a breeze.
I managed to ramp myself up on Perl and start writing some sweet scripts within a week. I also bought the Programming in Perl book and now I turn to that book for the more heavy duty stuff.
The long and short of it: this is the best beginners book around for Perl.
Way overratedI hate to slam a book that is considered such an essential book in the community. But I feel compelled.
First, the good points: It has great reference sections. Very, very important for such a book. It is also reasonably comprehensive. Sure, you'll probably also want Perl Cookbook to really know what you are doing, but it's too much to ask for Learning Perl to contain such practical uses. It crams so much more in than most programming books.
As for the bad, I could rant for a long time, but I will try to be brief. First, the book's organization leaves much to be desired. While the macro-organization is perhaps reasonable enough, a trial lawyer would have a field day with the objection, "Facts assumed not in evidence." There are numerous code snippets in this book that are only understandable at even the most basic level by flipping ahead 100 pages, then cross-referencing to the appendix and then flipping back to a different chapter. A novice programmer shouldn't have to deal with terms like "grep" or the like until the definition of "grep" is actually given since, after all, the last time I checked, "grep" was not a standard phrase in the English language that is understandable to all.
The book is written for people with a broad background in programming. For example, the reference section, which is supposed to describe the functions in depth describes how the command "printf" works as follows: "This is similar to the C library's printf(3) and fprintf(3) functions." While there was some other gobbledygook in his listing, none of the gobbledygook explained how the function worked. Last time I checked, the book was titled Programming Perl, not Programming C, Volume II. Why its only description for how the function actually works is a reference to another language is typical of the breezy arrogance of the authors. This was more egregious than most other examples, but in general, the authors were telling their story to insiders who needed a refresher course, not people who wanted to hear the story from the beginning.
In retrospect, after reading other books about programming, most horrifying to me is the utter lack of disregard for good programming standards at the most basic level. The authors seem to glorify the "Obfuscated Perl" approach, which is to write the language in as tightly wound and obfuscated a way as possible. This is simply bad programming, even it does take a very smart person to understand what's going on.
Ideally, good code should be readable like a novel, if you have a basic understanding of the language. In a good novel, you don't flip back and forth between pages trying to remember who or what something was. Variables and subroutines should have clear, unambiguous names. Variables should be clearly spelled out, as opposed to the way the authors (and most Perl programmers) seem to think is best, which is to refer to such constructs as $_[1], requiring one to flip pages to where the subroutine was called to understand what information is being passed to the the subroutine.
Rather than taking the attitude -- almost universally held in the Perl community -- that There Is More Than One Way To Do It, the authors should have emphasized, You Might Want To Think About The Option That Will Make It Easier For You And Others To Understand Your Code When You Look At It 3 Months From Now. Journalists don't score points for writing obscure text. Yes, they can write things any way they like, but they have professional standards - codified in the AP Style Guide, among other places - that say that certain ways of doing things are better for readers. Programmers should adopt a similar way of thinking - both about the readibility and workability of code -and this book does everything to undermine this notion.
A retrospective from a Unix user and casual programmerI've been a Unix user for seven+ years, and have some programming experience, although I am by no means really knowledgable about either. When I entered my most recent job, I needed to learn Perl fast, and so I used this book to help me get started.
From a self-teaching perspective, I found this book to be exactly what I needed. I'll admit that the first chapter (a general description of the Perl language) was not very helpful, but I found the division of the rest of the book by small pieces of the syntax (scalars, arrays, hashes, regular functions, i/o, etc.) to suit my needs, which tended to be along the lines of: I need to do x right now. I learned the easy stuff really quickly, and I still use the book as a constant reference.
Now, it is just a beginner's text, so it is not an ideal complete reference, and you won't learn anything particularly nifty. However, if you need to both learn how to program and actually do some programming at the same time (i.e. not in a class-room setting), Learning Perl can be a wonderful text.
Poor organization and inconsistent toneI'm surprised to see so many positive reviews for _Learning Perl_. As another reviewer said, I think these comments represent more enthusiasm for the language than for the book. Randal Schwartz has a great reputation in the open-source community, and I have no experience with him as a trainer or consultant, but judging from this book I wouldn't hire him.
The book has a serious problem in that the tone is totally inconsistent. Difficult concepts are explained in terms that assume in-depth knowledge of C, C++, and UNIX; and simple concepts are run into the ground in page after page of trivial examples. The authors also make the serious mistake, all too common in technical books, of providing jokey examples that obscure the main point---identifiers that form puns on statements, irrelevant jokes in comments, and so on. To some people this comes across as a light, friendly tone; to me it smacks of condescension and clannishness.
I made the mistake of trying to use this book as a textbook for an introductory Perl class of students with a variety of levels of programming experience. The C-savvy students were bored, and the beginners felt they were being teased and condescended to.
Summary: This book isn't up to O'Reilly's usual high standards. If you want to learn Perl, and you already have some programming experience, start with _Programming Perl_ and _Perl Cookbook_ (the Camel Books). If you have no programming experience, start with Simon Cozens' _Beginning Perl_.
a must have for beginnerI look for a beginning perl book that teaches me Perl in a programmer to programmer tone, assuming I already have basic programming skills. After many books, finally, I got learning perl which helps me learn as well as appreciate Perl as a programming language.
I always think that perl is only useful as a CGI scripting language. But it actually is a very good language to work with UNIX and to do text formatting. This book presents different topics of Perl, including Regular Expressions, Filehandles, Formats, Directory Access, Database Access, CGI. I particularly love the regular expression chapter, it's concise and simple. though you may find there are not enough details on some topics e.g. CGI, please remember this book is only 302 pages for beginners. If you want more specific details on a particular topics. you should go to another book. The examples in the book are not just naive and useless in the real programming world, but they are really useful and handy for you to cut and paste to your perl projects.
One of the best features of the book is the exercises after each chapter. Those questions are really testing what you have learn in each chapters. From the questions, you will know whether you already master the chapter or not. the answers provided are not just answers, the authors explain the them too!
As a beginner's book, "Learning Perl" does a good job to teach readers to write useful perl programs and scripts.
Four stars if you know UNIX or are already a developerThis is not a bad book, but I'm still surprised by the generosity of the reader reviews. Perl is something of a cult, so I think in a lot of cases a positive review means "I like Perl" more than it means "I like 'Learning Perl.'" People hesitate (understandably, I think) to insult a book that's closely associated with a great open-source language.
I myself think Perl is great, but I have some serious problems with the way this book was written and edited. The authors can't seem to decide whether this should be an easy book for programmers, a difficult book for non-programmers, or even (at times) an easy book for non-programmers. That is to say, the tone, style, and assumptions about the audience change throughout, sometimes from page to page. Key concepts are glossed over with a minimum of explanation (the chapter on hashes, particularly, is a disgrace); then, defying all reason, very simple concepts are overexplained for two or three pages. The authors have been too close to their subject for too long, and they seem to have forgotten what they learned and the order in which they learned it. Maybe a newbie co-author might have helped.
If you are an experienced developer or are comfortable with UNIX, you'll get a lot of benefit from "llama." Otherwise, though, start with another book, or learn something about UNIX first. Then return to this book, and you should have an easier time of it.
I have some complaintsThe back cover of the 3rd edition says (roughly), "Ask a perl expert today what book they used when they were learning perl, and they'll tell you it was the llama." Well, yeah; probably when they were learning perl it was literally the only introductory book on the subject. So that's not really an endorsement of quality.
The llama is actually a decent companion on your perl voyage. Particularly if you already think of yourself as a programmer are at least acquainted with the unix way of thinking, it will show you much of what you want to know about perl. And if you're new to perl you'll want to have this book (there still aren't any better options for the newcomer). However,
1. The nonstop Flintstones references are hard to stomach. (Yes, that's a trivial complaint. But it drives me nuts.)
2. There aren't enough exercises. This is a nontrivial complaint. For example, the chapter on control structures has only ONE exercise (!), which you can solve by ignoring most of the material in the section. The chapter which introduces SPLIT and JOIN has no exercises that use them (there aren't any exercises anywhere in the book that use split and join, as far as I can tell.) It's a persistent problem; since most folks learn by doing, they'll be required to exercise some imagination in creating and testing their own exercises. An introductory text should be much stronger in this area.
3. The 3rd edition rewrite moved some fundamental (and easy) stuff into a late-in-the-book "Advanced Perl Techniques" chapter. A few examples off the top of my head are the transliteration operator, slices, and sorting subroutines, which are meat and potatoes perl. They were better integrated into the body of the text in the 2nd edition.
4. The authors actually warn you away from trying things out in some cases! I'm thinking, for instance, of the offhand "CSV files are too hard, don't try splitting them" and "Don't try to work with HTML, it's too hard" comments. That is not in the spirit of perl at all. A few exercises that show what the difficulties are and give a few tricks for handling them would be better. And you'll be in a much better position to used and appreciate a prewritten module if you understand the difficulties it's supposed to be taking care of.
The biggest improvement in the 3rd edition is the reorganization of the regular expression material (into three chapters). They still need more exercises, but the presentation is good. On the whole, though, I liked the organization in the old editions better and probably recommend using one of them if you can find it.
Good book for every one who is programming in PerlThis book is perfect for what the title says: Learning Perl. I own this book, the Programming Perl book, and the Advanced Perl book. All three are great for different things. If you've never written a line of Perl before this is the book to get. It will show you how to do most things related to Perl, and will even get you started in CGI and Database access. The authors often point toward valuable web resources like CPAN. In addition, the book is fun to read- not drab and dull like other programming books (this seems to be an O'Reilly thing, and maybe why I buy so many of their books). I've written a lot of Perl code over the last year or so and I still often refer to this book for little things that I forget (like syntax for certain things, etc). This book sees the most use out of the three Perl books I own (although Programming Perl is pretty worn too).
Definately a must-have for anyone serious about programming in Perl. Especially if you write in a lot of languages like I do and don't have the brain capacity to memorize every nuance of every language. This book is easy to find information in.
This should be your first book on PerlI first tried to learn Perl by using the other O'Reilly book, "Programming Perl". I was completely lost. Then I found this book and my second attempt was much more successful. This book is great for self-teaching, and the book chapters should be read in order as each chapter builds on previous ones. Each chapter has plenty of good programming exercises with answers in the back of the book. I review this book in the context of the table of contents.
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
Great for aspiring Perl programmersIf you are new to Perl, this is the book you should go for. It provides an entertaining and thorough stroll through the language. If you are quite familiar with this type of language (like C, C++, or scripting languages) then you should acquire Programming Perl (but then, you should buy that book in any case). I bought both Learning Perl and Programming Perl, and I have not regretted Learning Perl at all, because of its great tutorial ability.
Great first Perl bookThis book is perfect for what the title says: Learning Perl. I own this book, the Programming Perl book, and the Advanced Perl book. All three are great for different things. If you've never written a line of Perl before this is the book to get. It will show you how to do most things related to Perl, and will even get you started in CGI and Database access. The authors often point toward valuable web resources like CPAN. In addition, the book is fun to read- not drab and dull like other programming books (this seems to be an O'Reilly thing, and maybe why I buy so many of their books).
I've written a lot of Perl code over the last year or so and I still often refer to this book for little things that I forget (like syntax for certain things, etc). This book sees the most use out of the three Perl books I own (although Programming Perl is pretty worn too).
Definately a must-have for anyone serious about programming in Perl. Especially if you write in a lot of languages like I do and don't have the brain capacity to memorize every nuance of every language. This book is easy to find information in.
Excellent Introduction to Perl for Experienced ProgrammersI learned Perl 4 from the first edition of this book years ago. I recently read the third edition to get up to speed with Perl 5 and found this book covers nearly every aspect of Perl I've used over the years. Perl is a complex language, and any introductory book on Perl needs to restrict itself to a subset of the language to prevent the reader from becoming overwhelmed. The authors did an excellent job of presenting a subset that is large enough to cover most everyday Perl tasks, yet small enough to remain accessible to the Perl novice. The exercises at the end of each chapter solidify most of the core concepts and syntax of each chapter.
There were some shortcomings to the book, however. The book is oriented heavily towards Unix systems, and programmers working on Windows systems will have a hard time getting started and completing some of the exercises. The authors should have provided instructions for downloading ActiveState Perl, a free professional Windows port of Perl, and provided more assistance on the Unix-oriented exercises.
Additionally, some basic language features were not covered, such as the peculiarities of do blocks and using chr and ord to convert between characters and their numeric codes. Most importantly, the book does not cover two-dimensional arrays. They are mentioned only in two paragraphs in Appendix B, which refer the reader to four different perldoc sections. This topic is complicated and important enough to warrant its own chapter.
In summary, this book is an excellent introduction to Perl for programmers who are experienced in other languages already. It's not so good for beginning programmers because basic programming concepts are not explained. The major shortcoming is that readers, especially those using Windows, will be frustrated at not being able to easily do what they want to do and will too often need to wade through the documentation.
Not for experienced computer scientists or programmersI highly recommend learning Perl to anyone working in computer science, but I can't in good faith recommend Learning Perl to anyone who considers him or herself an experienced programmer. The book proceeds very slowly and is pretty short, meaning that in the end you'll know only the very basics of Perl. In fact, many of the footnotes refer the reader to Programming Perl or to the perl manpages to get the "real story" on some issue that Learning Perl glosses over.
If you intend to learn Perl (and more than the very basics), you will probably end up reading through Programming Perl or many of the Perl manpages. I would consider Learning Perl only as an optional primer for those not already fluent in one or more languages like C. Otherwise you will spend some time reviewing the semantics of while loops, what a file handle is, etc. You will have learned the basics of pattern matching and Perl's syntax and idioms, but you may as well cut to the chase and learn from Programming Perl.
On the other hand, I am coming from a theoretical computer science background (the CS program at Carnegie Mellon University); Learning Perl may very well be appropriate for have never used anything more sophisticated than a scripting language. However, even beginning programmers should be aware that Learning Perl assumes familiarity with a Unix environment. (But see also: Learning Perl on Win32 Systems).
If you have doubts, at least take a look at the perl manpages. They come free with every distribution of perl.
Is Perl the right language for your task? Start Here!Wow - one hundred and forty six reviews already, the vast majority of them overwhelmingly positive. What could I possibly have to add? Probably not much, to be honest, but that has never stopped me before. Let me offer a few observations.
1. This book seems like THE place to get enough of a sense of Perl to decide whether it is worth learning.
2. In particular the first chapter - a broad walkthrough of the language - gives a great overview without unneccessary detail, and is itself worth the price of admission. You can read it in a couple of hours, and by the time you're finished, you'll know whether Perl is the right tool for whatever job you have in mind.
3. Much of the power of Perl lies in its use of Regular Expressions. One weakness of this book is the cursory treatment (chapter 7) of this topic. If you know you want to learn to work with Perl, buy a copy of Jeffrey Friedl's Mastering Regular Expressions (also in the O'Reilly series) right away.
4. The book is not particularly practical as a reference. If you are going be doing any serious programming in Perl, get yourself a reference manual. Again I like the O'Reilly offerings; your tastes may vary.
5. Nor is it particularly heavy on the theory side. Again, another text may be useful here.
6. Despite those limitations (or perhaps because of them) the book makes an excellent starting place for one looking to learn Perl. It's a fast, well-written, pleasurable read, and one familiar with other procedural languages (C,Pascal,Basic,Fortran, etc.) should be able to get through it in as little as a weekend.
7. Oh, and one more thing. If you need to do a fair bit of string processing, data extraction, etc., Perl is indeed worth a look. It may not be elegant, but Perl sure is useful. And in my opinion, it's fun as well.
Really good book, but..I would reccomend going with Programming Perl if you already have some knowledge of other programming languages. Go with Learning Perl if perl is your first programming language (which it shouldn't be). Over all, I'd reccomend that you buy both Programming Perl and Learning Perl to get your perl book collection started :), but Programming Perl if you can only get one book right now.
Not great for people unfamiliar with UNIX/C/awkI found this book to be extremely easy and useful reading. I taught myself the basics of Perl using this book in only a few days and wrote a substantial program immediately afterwards. It is not, however, a great book unless one already has a certain familiarity with UNIX and scripting, like shell scripts or awk or ANSI C itself. This book has elevated me to a higher level but only I think because I was already at a point where I could take in the material. Even so, there may not be a better introductory level Perl book out there. It may merely take more than a few days to wade through the book.
A great book if you are familiar with coding.Luckily I am familiar with how to code, and so this book turned out to be a fabulous resource. To be fair, the authors state that you should really have done some sort of programming before or this book will not be as much value to you. But with that pre-requisite covered 'Learning Perl' is a fun and information dense learning tool. Not to say that you can't do it if you have never coded before, but it will be more of a struggle.
Coming in at under 275 pages, the book doesn't waste time in getting down to what you need to know. I am a self-learner, and I was constantly amazed at the end of each chapter at how much we had covered. Given such information rich text, you might imagine it to be a little dry. Not so. The book exhibits a quirky, geeky sense of humor. And be warned; it uses footnotes extensively. While that may not be your bag, I found the footnotes made the book more like an internet browsing experience. You use the footnote like a link to more detailed and in-depth information.
I would give the book 5 stars but for one small beef. The authors assume that you are a UNIX programmer. There are numerous references to UNIX arcana, which you are supposed to just know. Phrases like 'If you want to make a Perl program [..] like the utilities cat, sed, awk, [..] and many others..' mean nothing to me. Furthermore there is little (a couple of paragraphs) to explain how to get Perl up and running on a Windows box. Now, I can easily overlook the little Microsoft digs, but I think more of an effort could have been made to reach out to the 'other side'.
So now, I am building my own Perl library. And I love the functionality it gives me. Once I figured out how to call programs from other web platforms I was one happy camper. All in all the time spent with this book was well worth it. Mainly the book provided a quick and comprehensive introduction to a powerful and flexible language. Thankfully the authors took a difficult subject and made it easier with their light in tone / heavy on the info style. Check it out.
Get the LlamaIf you have previous procedural programming experience (C for example) and/or have a STRONG desire to learn Perl (but don't have Perl experience), this book is for you.
If you do read the foreword, keep in mind that it's soley for your amusement. Beyond the foreword, the book takes a more serious approach to learning the basics of Perl but is still a far cry from the books that give you the feeling your mouth is full of sawdust.
After reading through this book, expect to be comfortable with
variables & literals (incl. strings)
arrays & hashes (associative arrays)
control structures (if/else, for, while, etc.) & functions(procedures)
simple I/O
basic regular expressions
file handling
and more...
At the end you get a nice introductory treatment of CGI programming using Perl...an incentive to buy the Camel to learn
more advanced Perl incantations. =)
The book is very professionally written-I didn't find many of those bugs/typos that so many books are infested with.
Thanks Randal & Editors!
This is for people who have NEVER written codeI followed the advice from other reviews and bought the book since I am completely new to Perl. The foreword and the odd attempt at humor are terrible, but that is a small detail. What really bugged me is that the author spends so much time on the simplest stuff. You learn that functions that take arguments can do more interesting stuff than functions with no arguments, and you learn what if/else is about. Wow! For anybody who can understand the following:
while (i-->0) array[i] = 1;
this book is a waste of time. I did learn about Perl, but it could all have been summed up in 30 pages, not 200+. If you have programmed in C before, go for "Programming Perl" instead.
Good Book, Bad RevisionI gave the 2nd edition of this book 5 stars for its readability and concise coverage of the Perl basics. Unfortunately, the 3rd edition adds very little and takes away many of the best parts of the 2nd edition. The chapter on report formatting was completely removed in this edition. I guess we will have to call it Pel instead of Perl. (The "r" in the name stands for "reporting," but reporting is no longer covered at all in this book).
The second edition also had an excellent chapter on CGI programming with Perl. This was also sent to the dumpster. Another casualty was chapter one which previously contained a well crafted introduction to the language called a "stroll through Perl." It has been replaced by a boring and traditional introduction chapter.
So, what were the additions that warranted the creation of a new edition in the first place? The chapter on regular expressions was spilt into three chapters. A good idea, but the coverage is almost identical to that of the previous edition. A little more explanation is added in various chapters here and there, which is good. But, this edition also contains many more footnotes, which is bad! The authors seem obsessed with footnoting the most obscure and bizarre details in footnotes, and there are footnotes on almost every page. (Of course you don't have to read them, but like looking at a bad car accident, I just can't resist).
This is still a good tutorial on Perl, but the second edition is so much better I would recommend buying it instead of the third edition. Unfortunately, newer does not always mean better.
Not really for absolute beginnersThis book calls itself "Learning Perl," apparently because it is geared towards beginners. However, upon reading more and more of this book, it becomes increasingly clear that this book is not at all a learning tool, as it is a good reference for those who already learned the basics of Perl. The first chapter should be skipped over entirely if you're a beginner, because it will do nothing more than confuse you and turn you off to Perl. The subsequent chapters covers all relevant topics, but they skimp on providing descriptive key examples which would help you to better understand the concept. This book makes too many references to C and other languages, implying that you already know previous programming languages. The chapter on regular expressions is shamefully cursory and lacking in examples which can be adequately picked up by the Perl novice. The language of the text is not for the beginner user, as it throws around too many Perl-centric terms and definitions. For an intermediate, this may be sufficient, but it will not do for the beginner. I recommend Perl for Dummies as the ultimate beginner's tool. That book doesn't cover as many topics as this book, but it certainly explains conceps in a much more novice-friendly language than Learning Perl. Learning Perl makes the mistake of not keeping it simple. This is a very important teaching idea, when your expected audience are complete novices who need to have everything explained to them in basic layman's terms. This book is more of a sophisticated primer for already skilled programmers.
Great book for beginning programming on a *NIX platform.If you haven't done much programming on a *NIX box, then this book is for you. If you have, but just need an intro to Perl, it's still pretty good, but very light reading - you might as well buy a copy of Programming Perl at the same time, so you can just shift over when you're done. Especially good if you have no programming experience whatsoever, but don't fault the book for not teaching you *NIX - it's not meant to do that.
can be read on a long weekend!I had no previous exposure to perl and I have read more than half of the book and absorbed it very quickly. I would say this book is sufficient for 90 percent of the needs of 90 percent of the people who want to learn perl. It is concise and that helps you glance through chapters quickly and learn the basics without getting slowed down by details that may come to use rarely. There are two minor negative things that come to my mind. The examples are rather boring and some useful tips which I think belong to the text are casually mentioned in the footnote, e.g. use of & before the name of a function.
Useless for someone who doesn't know PERL and useless for someone who doesI bought this book as I have been asked to start using PERL at work. All I can say is what a waste of money. It has a tiny index (9 pages). In a programming book, the index is the most important part of the book. I get programming books and look-up things when I need help. If I can even find anything in the book, it points me to the PERL documentation. I offered it to a fellow co-worker who has been using PERL for a while now and he says it doesn't have anything that a beginner can't pick up using a free online tutorial. So, don't bother with this book.
JuvenileUn-arguably the most irritating book I have ever read in order to learn a new language (I have lost count how many I have read in the last 25 years). While I now love Perl, I do so despite having started with this book. The authors attempt to play the "my way is SO superior " approach by filling the text with derogatory references to other languages, while at the same time writing with that condescending "for Dummies" approach. The book frequently teases the reader with un-referenced mentions of knowledge to be revealed in later chapters -- we'd apparently be too confused if the information were to be related now, let alone referenced -- so that an experienced programmer is frustrated by having to search through the text to find out how commas are "used for a more-important purpose", or "we'll see later there are other kinds of quoting". That, combined with the obligatory cult-of-personality type homage to their exalted ruler Larry Wall who is referred to by the authors on a first-name-basis in the all-too-frequent footnotes take this book decidedly off my list of recommendations.
a well-written, essential learning toolBefore beginning this book, I knew what Perl is and what it's good for. However, looking at some Perl code, I was too intimidated to make a serious attempt at learning the language. I had a good foundation in programming concepts, as well as some experience writing simple C programs, so I decided to make the effort to learn Perl.
This book is very well-written, and even entertaining at times. I agree with other reviewers who suggest that this book is not for the programming neophyte, although a dedicated student will certainly be able to work through the book and come out knowing not only the foundation of Perl, but of programming as well. Those somewhat familiar with C will have no trouble at all, and will be particularly amused by the ease with which Perl handles things such as arrays and strings (read: in a much easier and more common-sense way than C does).
I highly recommend this book for anyone desiring to implement Perl in their daily computing lives.
Good book, but lots of patience requiredRandal Schwartz's "Learning Perl" is an excellent book for those who want to learn the Perl language. "Learning Perl" covers the basics of programming in Perl through 17 chapters, each averaging 20 or so pages with practice exercises at the end of each chapter. While Schwartz claims a novice could learn from the book, I had to re-read several passages and chapters before I fully comprehended his ideas. Tinkering with some Perl code and writing some experimental programs with the book in hand is a must.
I would highly recommend this book to anyone who is serious about learning Perl and who has some experience in Unix and/or another programming language. I was a complete novice to both Unix and the basic concepts of programming when I bought the book. It took me the whole night to figure out how to execute a simple "Hello, world!" program on Mac OS X. After nailing down the basics of Unix through trial and error, however, I was able to execute more programs flawlessly. Assess your abilities and your commitment honestly before making the purchase. Good luck!
Does just what it saysThis book is not intended for intermediate Perl programmers, or people just starting to code. But if you know another language, preferrably rudimentary C or C++, this book will be a great help to you. It gives you confidence while helping you to learn many of the wide variety of items Perl has to offer. It even covers basic CGI and databases. I would have given it a five stars, but there are a couple of faults:
1. Not adequate coverage of regular expressions (guess they want you to buy that other O'reilly book- The Owls)
2. I had difficulty getting Perl for my Windows 98 system-the information they give to help is for Unix or Linux systems.
For the record, I use a shareware Perl Editor for Windows 98 that also does CGI, but can do normal Perl as well (Remember to include a
Clear, and comprehensibleI found it very suitable for beginners provided that you have some background in Unix, C, sed, awk and shell programming languages but even if you don't, it is still pretty easy to grasp if you put enough effort into it i.e. at least type in the examples on a Unix terminal and try to understand what's going on. By the way, if you don't know anything about Unix, I suggest trying Harley Han's "Student Guide to UNIX", a very good book with introduction to Unix commands and editors.
The author did a great job of providing examples along with every new concepts he was trying to explain. I have to admit that the first chapter looks kinda scary for somebody without any background in computer programming but if you can figure out the 'big picture' and spend enough time trying to follow the logic, the following chapters until almost the last chapter are easy.
All the exercises on the back of the chapters are of reasonable difficulty, enough to try your understanding of the material presented in the chapter. If you can do the exercises by yourself, you can be sure that you already grasp the material. The best part is, all the answers are available in the appendix to let you see how the author implemented it (since they are Perl experts, I always ended up writing solutions that were longer than necessary compared to theirs).
However, to reap the maximum benefit, it's recommended that you also have "Programming Perl" by Larry Wall besides you as this book makes a lot of references to "Programming Perl" reference book. Buy this book, and learn how to code in Perl, an investment that you'll not regret.
Not for the Beginning ProgrammerI'm a beginning programmer and find this book to be aimed at those with programming experience. I am required to continue with this book as it is being used as a textbook for my class, but I'm sure there are better books out there for beginners.
Features I don't like, for example, are: 1.) The first chapter is a book overview as to what will be covered within the book, but it's so intense that you have to use other books to understand what's happening unless you have previous programming experience; 2.) Explaining Perl terms with C language terms, which is only usefully if you know C; 3.) Examples suddenly adding or taking away parenthesis without an explanation as to why; 4.) Giving an example of a while statement with braces, but not explaining what's really happening within those braces and why.
This may very well be an excellent book for the ordained programmer, but if your just starting out I'd do some more searching.
Great Writing StyleThe writing style of this book actually keeps you interested in reading the book, while providing a very good start into the world of Perl. I've was guilty before (like most) of scratching around for Perl solutions, but this book actually starts at a low enough level to build the foundation which must be present before solid construction of of a Perl program begins. I highly recommend this book to anyone starting to learn Perl. There are other worthy books to continue learning the world of Perl and Perl CGI, but this is my top pick for a starter!
Read, practice, use in conjuction with CamelGrowing up with a C=64, then moving on to Q-Basic, Fortran, and ANSI C in college, I thought the "Camel Book" (Programming Perl, O'Reilly) would be fine, and so I chose to forego this book. I made a mistake...
For all but the most experienced programmers, I would suggest this book -- in conjunction with -- the Camel. I found the prose easy to read and follow, and the examples illuminating, yet sparse. I would have doubled the number of examples and also questions at the end of each chapter.
My method of success was to read the book through, re-reading occasionally for difficult sections. Read the chapters and do the examples. And finally, read the Camel book and when hitting a difficult topic or one covered very thinly in that book, to go back and read the relevant chapter in the Llama.
Overall, an excellent book. Well written, good examples, and for the novice to mid-level programmer from other languages.
For Twice the Price Go Buy The CD With All 6 BooksIf you are serious about learning and using Perl, buy the CD. Go search for it on Amazon- "The Perl CD Bookshelf". Read my review on the CD.
Otherwise, this is a solid book for learning Perl. However, some newbies may find it a little too advanced. I would suggest starting with "Perl & Cgi: The Visual Quickstart Guide". It will get you on your feet quickly. Then advance to this book, or the CD, or even both.
Wonderful Introduction into Another LanguageI purchased this book hoping to gain insight into Perl after having experience with C, C++ and Java. I came back with not only a wonderful, base knowledge of the principals of Perl, but came out with some other skills as well.
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.
Good Book!I learnt Perl for the first time from this book. (Before this, I had no idea of Perl.) This is a great book and a gentle introduction to Perl. I completed this whole book (plus exercises) in about 5 days flat, reading about 6-7 hours/day (during the Spring break :-)
Anyway, certainly get this book if you are learning Perl for the first time. And, then if you need more Perl, you can move onto the Perl Cookbook or Programming Perl.
I deducted one star from the rating for the following reasons:
1. The book has more than a few typographical errors. However, these errors are mostly trivial and of non-conceptual nature, so if you are following closely, you will catch them.
2. Although this is a beginners book, some of the exercises are way too elementary. I skipped some of the beginning exercises because I knew instantly what to type.
The bottomline is that this is a great book for learning Perl. So, if you are beginner, go get it!
THE perl tutorialI've been through this book several times. I went through the 2nd edition on my own a couple of years ago when I learned perl. I have since (after a year of hiatus from perl) been through the 3rd edition in a classroom setting. The 3rd edition is much improved in terms of structure and pace. For example, explanation of regular expressions (one of the most powerful features of perl) is expanded into three chapters. On the down side, I would have liked to see a chapter or two covering references and OOP.
The authors are clearly expert coders and have an intimate knowledge of perl. The prose is clear and deliberate, over-simplifying when helpful, but being sure to point you to the details in footnotes. The book is also laced with wry humor that both makes the dryness of such a topic more palatable and serves as an introduction to the quirkiness of "perl culture" in general.
If you are a beginner in Perl, and have some programming experience in another language, this is the one to get. Not a great reference, but a great tutorial.
Top of the lineThis is as good as it gets.
The writing style is fun throughout, the chosen examples interesting, organization very well thought out, presentation clear. You pick it up and you will keep reading.
The first chapter gives an overview of what the language can do via an example ("guess the secret word") which is developed more and more using more and more features of the language.
In your average programming book the examples are tortured and boring so that it's hard to keep reading. Not so here.
Everything is well motivated and the writing style is amusing throughout.
If you are coming from a system language background you will be hooked immediately. The ease with which many tasks are dealt with in Perl is astonishing.
The amusing style and excellent presentation is kept up in all chapters of the book. The book will give you an overview of the language and basic skills.
None of the programming books I have seen comes close to explaining basic constructs as clearly as this one. If this is your first book of first language you are very lucky.
You will feel the need for an in depth presentation. This is not a criticism of the book. What's presented here is already very powerful.
Even after 2 days I was able to write a script doing some useful work I could not otherwise have accomplished.
Perl is too rich to give an exhaustive treatment in 260 pages. You'll need Larry Wall's book also and this is clearly stated in the book.
This book makes learning Perl fun and will create a lot of fans for the language. It's the perfect entry and will keep you strongly motivated to delve deeper.
The EssentialThis book can be considered to be a part of a two part series - first you read this book, then you read "Programming Perl," after which time you start writing poetry in Perl. This book offers a good introduction to Perl with very little knowledge needed, but it does not bore someone experienced in shell scripting or general programming.
The sequence of events starts a bit slow, but picks up as experience grows. The exercises are exactly as they should be - they offer a good chance to get experience but don't feel as if they are coming out of the blue. They usually involve extending or changing the example programs given earlier in the chapter, and they are usually something that once you grasp the underlying concept will take very little time to implement.
The title is very appropriate. There is a lot to Perl that is not covered (at least in any depth) in this book. The much thicker Programming Perl book takes up that slack, but the existance of this book is inspiring - you can read this book to learn enough perl to use for most practical purposes - and then have a good foundation when jumping into the "big book" - I like that approach to learning programming languages and I like this book.
A stroll through mudI picked up Learning Perl with very little programming experience (only having completed a compulsory Visual Basic course in high school), and found it easy to read and understand.
The first chapter, A stroll Through Perl, is perhaps the biggest flaw in the book. Rather than introducing the capabilities of Perl (which I think is what the author's intended), it bogs the new reader down in detail and seems to set forth an avalanche of cryptic code at you. It was so bad that, thinking that Chapter 1 was an indication of the rest of the book (ie it was all too cryptic and meant for seasoned programmers), I set the book aside for a few months.
I came back to the book when a friend of mine picked it up, and, after skimming over Chapter 1, was pleasantly suprised. The rest of the book is easy to read and understand, though at times a little dense for the new programmer, and immediately useful. The examples are good illustrations of implementation ideas for concepts described in a chapter, and the excercises at the end of each chapter are good indications of what you've learnt. The book introduces new concepts smoothly and quickly integrates them into existing material, and culminates in an especially interesting and useful chapter on CGI (which is really what I wanted to use Perl for).
Overall, it's a great book, even for people who are new to programming: with a little dedication you'll be able to blaze through the chapters and become proficient at Perl basics. Some organisational errors let it down and make the introductory pages unjustifiably daunting for those new to programming, but other than that, it was a very satisfying and self-contained tutorial for Perl users.
Not an Inro Programming Book. For Unix Gurus Only.I do not understand the high marks this book gets.
It is not an intro programming book. It presumes the reader already has substantial UNIX and programming experience.
You will learn little or nothing unless you are already versed sed, awk, shell programming etc. Do you know what "@ARGV" is?
There is a crying need for a genuine intro Perl book. Written by somebody who does not present Perl knowledge as an esoteric art but rather one which attempts to communicate information. This is not it.
Keep it handy!I have owned this book for a couple of years now and I keep it on a bookshelf an arms reach away. It spends most of the time on my desk anyways. The book is excellent for beginners - I knew nothing of Perl when I bought it. I used it as a textbook and spent about a week reading through the chapters and doing the excercises. I've used it as a reference ever since. It really only covers basic Perl topic - there is a brief mention of databases at the end and two mentions of references in the whole book, but as a tutorial I certainly recommend it.
Teaches Perl Syntax, not how to programThis book is excellent for the experienced programmer that wants to learn Perl. Like other reviewers said, it assumes prior knowledge from the reader. I see this as a strength, not a weakness. I already know what data structures are and how to use them, this book goes to the point, how to do what I need to do in Perl.
Recently we had a process at work that generated some text files with some shorter than expected lines, this text files were used as input for another process, this second process was choking when getting to the short lines. I wrote a program to identify those short lines, being an experienced Java programmer, I did this in Java, but I was aware that Perl was good at this kind of thing. I decided to get the Llama book after that, to take the plunge and learn Perl. After reading only a couple of chapters, I was able to reimplement the process to identify short lines as a Perl script with 1/5 of the code (just as an exercise, the process that was generating the short lines was successfully debugged before this).
If you are an experienced programmer looking to learn Perl, this is the book for you, if you don't have much programming experience, I would look elsewhere.
Poor choice for a beginnerIf you want to learn Perl I'd suugest Cozzens Beniing Perl from WROX Press. The Sams Teach Yourself Perl in 21 days or 24 hours are fair, but much better than this book.
This book presents things in a disorganized and incomplete way. Important concepts aren't emphasized, and syntax is presented without going into detail, its easy to miss.
A valuable introduction to Perl and a good read, too!I found this to be a very well-written book: a page-turner, even. The book flows very nicely and there's a very logical & sensible progression to the explanations. The language isn't overly complicated, and there's enough humor to keep it interesting. Whenever I'd skim a section ("I already know this stuff"), invariably I'd find myself going back and reading the entire passage.
Since I'm already familiar with C and Unix, I found the subject matter explained in a very straightforward manner. The chapter on CGI programming got me so anxious to learn more that I ordered "Programming Perl" when I was only halfway through! This is a great book for learning Perl, especially if you're already a C/Unix programmer. I recommend it unconditionally.
Excellent place to startIf you want to know how to write code in Perl, start with this book. It is helpful to know a programming language but it is not required. The author takes you on a step by step walk through the perl language. The chapters are short and easy to read. Each chapter introduces a new concept. Each chapter also provides you with some exercises so you can practice your newly aquired perl knowledge.
If you are new to the perl language, this book will help you learn the language quickly and efficiently.
Great learning bookWall's book is a refernce book. This is the book to buy if you want to learn Perl (which is a beautiful little language.)
My well worn copy of Learning PerlI bought Learning Perl when it was first published. It went around the office and everyone read it. I now go back to the highlighted, notated (by many different hands) pages once a while when I need a fresh idea for a solution in perl. This may be a "beginners book" to show the perl coder wannabe in a quick way all that can be done with perl, but I feel that the code examples are too sparse and don't comletely solve problems in programming perl as they arise. I also feel that it was not thorough enough in explaining the very basics of the language which to the uninitiated reader can seem like contradictions and lead to confusion. Everyone in the office wanted to write a real-world perl script once they finished the book. Even as a newbie perl coder I had to go to other resources to complete the simple script I was working on. But that can be said about most all programming languages... Use the examples for ideas, go back to it for explanations of syntax, but hold out for better books if you want complete results in perl scripts.
Useful, but unclear in several parts.I'm reading this book right now. It has value as an introduction, but I doubt that this book would make any sense if I had no programming experience. However, it's not an introduction to programming; it's an introduction to Perl, and that it does well. I only wish that the authors wrote more simply and clearly. Often it is hard to figure out what they mean. For instance, read this excerpt on p. 83 (2nd Edition):
"A word boundary is the place between characters that match \w and \W, or between characters matching \w and the beginning or ending of the string. Note that this has little to do with English words and a lot more to do with C symbols, but that's as close as we get."
The first time I read this, I had to back up and read it several more times just to figure out what the author means here. Is a space a word boundary? Apparently not, but I had trouble figuring this out from the text. Intuitively, I'd think that a space would be a word boundary, but nowhere do they say that it isn't. Things like this make it a bit tougher to read.
How to write unmaintainable codeI've been programming for a long time, C/C++, some Java, PHP, shell scripts, awk, etc. I needed a way to learn perl fast for a project, and a colleague recommended this book.
There's a lot of unreadable unmaintainable perl code out there, and books like this a probably a primary contributor to that. The authors seem to go out of their way to avoid writing clear code, constantly saying things like "well, you could write it this way, but perl programmers consider that a waste of typing," instead preferring to depend on hidden variables and the wide range of default behaviors that are perl.
The book is organized in a peculiar way that made it hard to find things: I don't usually expect to find descriptions of control constructs such as loops only in chapters about arrays.
I've come to see that its quite possible to write clear maintainable perl, but this book encourages poor coding habits.
excellent introductionWell written, lots of tongue-in-cheek jokes.
Answers to the exercises, which I find valuable.
I've been programming in C for over 20 years, have occassionally worked in perl (but don't know it off the top of
my head). I found the book very easy to read, and very
informative.
I think the book is geared towards an experienced programmer who wants to learn perl.
A REAL WHIRLWIND TOURIf you want to spend some time learning Perl, this fourth edition of the book is for you. Authors Randal Schwartz, Tom Phoenix and brian foy, have done an outstanding job of providing you with a book that helps you understand why the Perl programming language is the workhorse of the Internet; as well as, the language of choice for system administrators, web hackers, and casual programmers around the world.
Schwartz, Phoenix and foy begin by asking you a number of questions: What does Perl stand for? How can you get Perl? How do you make a Perl program? And, so forth. Next, the authors cover scalar data, with respect to numbers and strings. Then, they examine lists (an ordered collection of scalars) and arrays ( a variable that contains a list). The authors continue by showing you how Perl can make subrountines, which are user-defined functions. In addition, the authors next introduce you to the workings of standard input, output and error streams. They also show you a feature that makes Perl one of the world's great programming languages--hashes. Next, the authors take you on a trip to visit the world of regular expressions, where you can forget about the world of Perl. Then, they show you where this world fits into Perl's world. The authors continue by showing you how to use patterns to locate the parts of strings that you want to change. Then, you'll see some alternative ways to write Perl code. In addition, the authors present a complete set of tests that are used by Perl to help you find information about files. They also show you how Perl lets you manipulate operations directories directly, in ways that are even fairly portable from one operating system to another. Next, the authors show you a simpler way of working with strings and sorting. Then, they present the inner workings of process management. The authors continue by showing you how to use modules that already exist. Finally, they examine some advanced Perl techniques.
With the preceding in mind, the authors have done an excellent job of giving you a real whirlwind tour of Perl. So, at the end of the day, you'll know whether this is the right Perl book for you!
Very disappointingWhen I sought to find a scripting language to further the development of a website I was working on I was told that Perl was the best thing since sliced bread. Well, you'd never know it by reading this dull and boring book. It reminds me of one of those horrible college texts we've all encountered (and paid way to much for) with page after page of small font examples.
To be fair, I did learn many of the basics of Perl by reading the book (although I never did figure out what the intro by Larry Wall was all about, his magical beads, etc. I thought maybe Weird Al Yankovic had written it instead). After plowing threw most of the book -- and many tears later, I found I could actually write a few simple Perl programs. But getting them to work on a real webserver was another story.
That's when someone introduced me to another scripting language called PHP. Bingo! I learned more PHP, and how to use it on webservers, in one weekend of studying the on-line user manual than I did in two months with the Perl book. In short, forget Perl, unless you really like studying long, pedantic, cryptic and utterly obscure syntax to get a simple task done. If you do, however, you will enjoy this Schwartz and Christiansen book.
Not for beginnersI picked up this book the same time I started a beginning Unix class. I'm mainly a windows person, but want to broaden my skills into the Unix world, also the class was going so slow, I figured I could teach myself perl in my spare time. Wrong.
I have had programming classes before, in Basic, Fortran, Pascal, and Cobol. With this book, by page 13 he was covering arrays, hashes, and other terms I just didn't quite get. I can follow the examples in the book, but I'm wondering why the syntax is so funky.
I put the book down, and picked it up again after finishing my Unix class. The terms make much more sense now after being exposed to regular expressions, grep, sed, awk, etc. I'm going to give it a second try, but I dont' think I'm really going to learn this well outside of a classroom.
AwfulI see a disturbing ternd by O'Reily of pumping out books that are not well done. I consider this a terrible book. Its poorly organized, skips over many important topics, and among the worst books on Perl Ive seen. My gut impression was it took them about a month to write it, just a rush job rip off of programming Perl.
A beginner should avoid this book. Learn Perl from another book and use Programming Perl as a reference. The Cookbook is good too.
Avoid this book, its a waste of money. Its the worst languages book Ive seen in a while.
Keep lookingI don't understand why people rave about this book. Whenever I try to use it as a reference, I end up even more confused then when I started out. I find that I can usually guess the answer to a problem or else just "do it like they do it in C" rather than trying to find a good example to follow in this book. For example, after reading the section on doing formatted printing statements using "fprintf" I was thoroughly confused. I tried using the function just like C does and it worked, but I would have spent days trying to figure out the syntax from this book's explaination. I don't know of a better book, but I would suggest you keep looking for something else.
THE book for your 1st timeAfter realizing that I needed to know something other than just HTML, I did a little research and decided on Perl. This was the book that taught me from scratch.
The biggest mistake I made was reading enough of the book to get me through a project that required me to write a couple of small scripts. I should have kept reading. Now I've decided to go back to the book and read it from start to finish, and I remember why I loved this book so much.
Everything is clearly explained. The authors assume that you've never programmed before. And even though the book is written from a Unix prospective, I (a Windows user) was able to follow along without any problems and get all my programs to work.
The book also contains exercises at the end of each chapter with answers and explainations in the back of the book. This was a huge help in learning the language.
The book is not overwhelmingly thick, so it's not intimidating. In fact, I moved through the boo!k rather quickly.
This isn't the only book you'll want for mastering Perl, but it's probably the best book to get you started.
Should not be your first book on PerlThe main advantage of the book is that it is short. The second edition is not much different from the first one and if you like to buy the book you can save some money buying the first edition -- it still can be found 50%-75% off).
It's just an introduction to Perl 4 not to Perl 5, but as Perl 4 is a reasonable subset of Perl to master at the beginning level it's OK approach.
The second edition is disappointing. It's kind of Randall L. Schwartz fiasko. The "Just Another Perl Hacker" as any hacker should be lazy, but probably not to such an extent: the only one new chapter (brief overview of CGI) and one new appendix (listing of standard Perl modules) were added (probably by Tom Christiansen, as the team now include him). The examples and exercises are identical to the the first edition. Go for Perl Complete instead, if this will be your first book. Skip this book if you already have at least one introductory book on Perl in this case better get Effective Perl Programming instead.
Horrible book for beginnersThis book is NOT for beginning programmers. We are using this book in a Summer School 6 week session and everyone at this point (week 3) : scrambling to come up with alternatives. This book: NOT ENOUGH EXAMPLES IN BOOK. ASSUMES PROGRAMMING KNOWLEDGE. We've already lost 50% of class due to dropouts from being completely confused!
Well-paced learning tool. RecommendedI came to Perl from Windows, C & Delphi and wanted a quick leg up the learning ladder. This book does just that, but with some caveats. I found it hard to get past the leaden and, to me, very un-funny foreword by Larry Wall. That apart, the book does the job as advertised.
The 1st chapter (A Stroll Through Perl) is tough. It throws in a lot of code without explanation (e.g. use of =~ operator on p.11) and is very Unix-oriented. If you know C, you'll hack it, but this is heavy stuff for a non-programmer wishing to learn. Programming Perl (this book's big brother) is much tougher again. You would need to be an intermediate/advanced C & Unix hacker to go straight into Perl from there. However, if you come to use Perl regularly (and most Windows folk coming here will be using Perl for CGI stuff), you would be well advised to buy both.
The remainder of the book consists of well-paced examples, culminating in a (for me) particularly useful primer on CGI. I have just completed my first fully home-grown large CGI script, and would never have got there without this book (and CGI.pm).
So 4 stars for general content and concept, 1 star lost for dud humour and the whole "Stroll Through Perl" thing which I think increases, rather than flattens the learning curve. Don't be fooled by claims of Perl's natural or intuitive feel. It is only natural and intuitive for "Hello World" programmes. Beyond that, it is natural & intuitive only for those who have been practicing it for years. The rest of us use it like more forgiving version of C.
Great bookFirst of all, this book is only the beginning. It does teach the basics including arrays, scalars, functions and many other topics that are central to a basic understanding of Perl. It also covers regular expressions which aside from the great swatch of modules is one of Perl's greatest strengths.
Because of that and the teaching style this book earns the 5 star rating.
Toward the end it hints at some of the other 'required' topics such as references, modules and objects. After you've read this book get a copy of Intermediate Perl to read up on those topics.
Enjoyable ReadThe first thing that stood out to me about the book was the humor of the authors. The footnotes were not only informative but also good ways to lighten the mood of the book.
However, the jokes do not take away from the content in any way - you will learn a lot from the llama book. I always recommend the llama to anyone who asks for a book to learn Perl.
Now, this isn't an introduction to programming, programming basics are assumed (which isn't much to ask). But that's another thing I liked about "Learning Perl" - the authors give you the information you need with no fluff. Everything is straight to the point and explained clearly & concisely.
Great introduction for those with programming experienceThis book is amazing. Now a seasoned professional, I've been writing Perl for 4 years and it all started with this book. It is so well organized with succinct examples that I still pick it up almost every time I write a Perl program. If you have no experience with programming, particularly if you are a Windows user, this book is light out on some important points, specifically, how to run Perl programs under Windows. If you are a Linux or Mac user, however, you can easily dive right into this book by simply opening a text editor and terminal. Despite the omission of Windows instructions, I would still highly recommend this book for Windows users wanting to learn Perl. If you have done any other programming, or know how to use a search engine, you can figure out how to install and user Perl on Windows.
A terrific Perl introThis is my favorite Perl book, as this is where I started, and where I go back for refreshers. I have the Third Edition, and can only imagine that the Fourth Edition is just that much better. As for it being a Unix only book, I would dispute that, as I learned quite enough about Perl to create scripts for the Win32 port of Perl running on Win 2000.
Second Edition is BetterThis is a complete rewrite of the second edition, plus the addition of another author. The format is good for reference, if that's how you learn. But it takes away from the rather eloquent writing and by-example approach that Randal Schwartz has been doing. Randal is a wonderful writer, and the Second Edition is much more suitable, as it provides a follow-by-example method, building more complex issues as the book progresses. It's clear that Randal is a good teacher.
I recommend anyone that really wants to learn perl, do so by using the Second Edition. While it may not have all the reference material available in the third, it does a wonderful job and will prepare you for more advanced learning, plus you can probably purchase the Second Edition now at a good discount.
Good for experienced programmer.The book is ok is if you have prior knowledge of programming and or scripting. It gives you a good introduction to the basics of Perl.
However, if you are new to programming you might find the information a little short on concepts. I took a class that used this book and I hade to use other sources to do homework or get a better understanding of some concepts.
Mind you my copy is well worn as if you know multiple languages you can sometimes mess up syntax so it is recommended if you wish to learn Perl and have a programming or scripting background.
However, if you are very new to programming and scripting you might have better luck with "Beginning Perl by Simon Cozens"
Great Book!It's the ideal introduction if you have some basic knowledge in C and Unix. No boring introduction, it jumps right into the world of Perl. If some of the reviews here are complaining about Chapter 1--I think it's great and the "Stroll Through Perl" is very well and detailed explained in the following chapters. If you have no idea what Perl is about but know enough about Unix and programming that a "loop" is nothing weird for you--get this book!
Easiest introduction to PerlIf you're already familiar with programming, this book is the fastest way to learn the essentials of Perl. It does not covers all features but if you need more specific things in Perl it probably means you should use another programming language. Perl is very efficient for string processing and matching regular expressions but certainly not for low-level programing with tight operational requirements. However, for writing scripts very fast to analyze files or performing simple operations, Perl is best !
If you want more advanced Perl features go to the "Perl Cookbook" that contains dozens of tricks for almost every possible problem or "Mastering algorithms with Perl"...but first look at the many Perl sites before considering buying such a book because almost everything in on the web !
If you want to learn Perl whithin a couple of hours, buy this book !
It is Unix-specific, but still useful for any perl platformMany reviews below said that this book is good for Unix hackers only, but I found the refrences to Unix more an enlightening than an impediment; I was learning some unix features in the context of perl :) . And, for those few platform specific tasks you will most likely need, there is more than enough online documentation, and much of it is included in the Perl download for whatever port you'll use. I myself started using MacPerl, and shortly after was writing a command line interpreting shell-like program as an educational project. (Which reminds me, does anyone know how to send backquote-like commands to MPW? any advice appreciated!)...
So even if this book has a few Unix-specific features, the amount of documentation availible will fill in the gaps for your OS.
18 of 19 Chapters GreatMost of the book flows: smooth, logical, heuristic. A very good introduction to what can be a confusing language. Best book I've seen for a programmer to use to pick up a new language. You will want the companion camel book, Programming Perl, for reference; but don't try to learn Perl from the camel book unless you are a masochist.
Two free bits of advice. Skip the first chapter. If you want to learn Perl, you know why. There is enough stuff in the first chapter to stifle the impulse if you read it carefully.
Second, practice your skimming skills on the second chapter. Then go back and re-read it carefully when you're fresh. It's long and important, but when you've got past this chapter, you'll roll the rest of the way through the book.
An introduction to PerlThis book is a gives a gentle introduction to Perll; by the time you have gone through this book, you would have touched on some very simple operations and common language idioms found in Perl. This is not a comprehensive guide; on the contrary the book is selective about covering only those constructs and issues that one is most likely to face early on in programming with Perl.
This does not collect any of the more powerful feature in Perl like Reference; Data Structures; Manipulating lists of list.
I would not recomend this book.
Get the second editionI learned Perl from the second edition of this book a few years ago, and was very impressed. After a few years without writing a single line of Perl, I needed to learn it again, so I bought the most current version of this book, the fourth edition. I was not as impressed with the fourth edition, it seems that a lot of the more advanced, and useful, stuff has been moved out of this book into the intermediate book. This book is missing a lot of the features that makes Perl a productive language. I'd try a few online tutorials first and then see if the intermediate book would work. Or, if you can find an older edition give that a shot.
Perfect introduction to Perl scriptingI learnt Perl scripting from the third edition of The Llama, and recently had cause to brush up my Perl for a new job, so I thought I'd check out the fourth edition. I'm pleased to say it's still an excellent work. If you want to use Perl as a scripting language, this may be all you need for your entire scripting career. Some basic programming knowledge might be helpful, but even a complete beginner could get something out of this.
The basics are covered well: strings, numbers, control structures, subroutines, arrays and hashes, and most importantly, reading and writing files, and the mighty regular expressions. In fact, I've not read a better treatment of regular expressions anywhere else. Everything is clearly explained and well-written. Basically, this is the gold standard against which all introductory books to a programming language should be judged.
However, this book makes no claim to covering all of Perl. At least the main text of the book doesn't. I don't know what happened with the blurb on the back of the book, but it mentions, among other things: threading, references, objects, modules and package implementation. Technically, these topics are indeed present, but only in that a paragraph each is devoted to them in Appendix B. You will certainly learn nothing of any value about them.
There are some other minor quibbles: you may find the constant Flintstones references tiring after a while. Also potentially wearing are the sometimes inane footnotes, which breaks the flow of the reading experience for little reward. On the other hand, I found them a lot less annoying in this edition, so perhaps I've just mellowed out in the intervening years. Finally, the last chapter does a very whistlestop tour of map, grep, exception handling with eval, and array and hash slicing. I've never found the 'cram a bunch of stuff we don't have time to talk about into one chapter' approach to be very useful, and it doesn't work here, either. Fortunately, apart from the slices, it's all covered again at slightly greater length in Intermediate Perl.
Speaking of Intermediate Perl, if you want to learn Perl as a general purpose language, rather than for short scripts, you need to go and read that one next. Many suggest that you can graduate onto The Camel straight after The Llama, but I strongly disagree -- I tried and failed miserably.
But as long as you bear in mind you're only getting half the Perl experience, this is still the book I would thrust into the hands of anyone looking to learn Perl.
Learning? This book is confusing on purpose!It's amazing how this book could become so popular.
The set of examples is very confusing.
The authors seem to be trying to break the world record of code "compactness" or something.
I understand the language is very powerful and allows to write compact code, but this is definetly not the right thing to do while learning a new language, at least not if you do it at the expense of clarity.
In my opinion, a good programming introductory book (as this one intends to be, from the name) should teach one concept at a time, and give very clear examples.
I don't recommend this book.
Bought it to stop the questionsI picked this one up for a friend in an attempt to get him to stop bombarding me with perl questions. It didn't work. He just asked me more.
Good even for a non-programmerI am a network geek by day but occasionally need to do some programming to support my work. I do a lot of reporting work and Perl was the best language to do what I need.
I bought this book and was able to start programming in no time. I really liked the examples and was able to change them to do what I wanted pretty easily. I recommend this to anyone who needs to do scripted work quickly!
Single best intro - do not be fooled by bad reviewsThis is the single best intro into perl. It's a small book but covers *ALL* the perl essentials in a straightforward way without burdening you with tons of details. I learned perl from this book on unix and on windows, and moreover it was a fine read as it happens to be well written. Don't be fooled by reviews stating it's for unix hackers, this is just NOT true. Although perl has its roots in unix, perl IS perl, it's about the language and it's the same for 99% whether you are learning it on ux or on windows - it's os agnostic and that's one of it's strengths. You need more details, you get some experience ? Go for the Wall book, the Friedl book on regular expressions or the perl cookbook (or just buy them altogether, it's a great set).
Learning PerlThis book is very well written. Although this book is technical, it is easy to read and follow. Many good resourses are listed in the book. Also, there are many examples and end of chapter questions that are very helpful in learning perl. I would recommend this to users who are looking at perl for the first time.
A great book for learning, regardless of your background.One highly ranked reviewer exaggerates that this book is only loved by expert Unix gurus and then steers you toward another title. Check the other reviews for yourself and you'll see this is a falsehood.
While Perl has its origins as the 'toolbox for Unix', this book is great for students learning Perl on ANY platform. I've been using the examples in this edition with the ActiveState distribution (available for AIX, HP-UX, Linux, Mac OS X, Solaris and Windows) on Windows and haven't had a single OS-related snag.
After trying several Perl books, all good mind you, this one's explanations, examples and exercises helped me finally get past Perl's reputation as a 'hairy' language and understand its beauty and efficiency for getting things done. It's clear from the quality of this book, that the authors have fine-tuned the content based on their years of experience teaching Perl, which they love.
I hope you use Amazon's "Look Inside" feature or browse a printed copy to decide which book is best for you.
Read it again even if you've learned PerlIt's been a while since I introduced myself to Perl with the second edition of this book. A lot of time has gone between then and now, and I've become fairly confident that I have, in fact, learned Perl. Still, there's a lot of little things you can forget over the course of a few years. Might as well refresh myself now.
Yeah, I've forgotten a lot. Wow. Lots of little things that I forgot I could do, simply because I never needed to use them during that crucial gelling stage. This is a pretty good book, but my attention definitely wandered around the chapter on simple databases. Maybe the author could have swapped the last two chapters, since the "advanced" stuff like grep and map get used pretty much every day, while DBM files are at best used by a smaller lump of developers. But that's just my personal experience. Who knows?
It was worth reading, though. I think my Perl code will look a bit tighter and nicer than it has thanks to the little details that I missed the first time through.
OUTSTANDING!!!!Quite simply, this book blew me away.
"A computer book blew you away???" you are probably saying, but let's keep this in the context of the computer industry. When I opened up "Learning Perl" I knew nothing about Perl other than it was a very popular language that had a strong following. When I got done with this book I felt that I had a solid grasp of what Perl could do and how to do it.
What blew me away about this book more so than many other computer books is the exceptional writing.
EXCEPTIONAL.
Not good, not great, but above and beyond nearly anything I have read before. While reading this book, you feel like the Authors are in front of you teaching a class and you can tell it's material that they love. Never before have I opened a book about learning something and was engrossed enough to read it cover to cover. Without having to produce a 900 page manual that certainly very few people would delve into, Schwartz & Christiansen/Phoenix have written a book that makes learning Perl fun and it's a fantastic introduction or refresher for anyone that wants to use this great language.
***** HIGHLY RECOMMENDED
Not Too BasicLike many UNIX administrators, when I first worked with Perl, I bought this book but spent very little time with it. I soon moved on to other excellent books from O'Reilly and other publishers.
After a 2-3 year hiatus from Perl, I needed to refresh my memory. Fortunately, I found this book quickly and gave it the time it deserves. I quickly realized that had I just taken the time to go through the tutorials in this book, I would have saved myself a great deal of time and effort.
My advice to those learning Perl, give your ego a rest and do not go on to other books until you've gone through this one thoroughly.
Superb! I nearly highlighted the whole thing.This is a MUST-HAVE FOR THE IMPATIENT BEGINNER WHO MUST GET SOMETHING DONE FAST.
I got some Perl experience two years ago and just started using it again. This is very readable. Most chapters had me itching to try things out. I was amazed at the outrageous things one can do with this handy language.
This is what I would expect from a third edition: it is well-conceived and the examples are meaningful and comprehensive, i.e., they cover many "what if" situations that would normally occur as afterthoughts. Most of the annoying humor and cuteness that ruins many IT books has been relegated to the footnotes. The footnotes are dense with valuable fine points. Every page is crammed with interesting information; it's a gold mine. The authors *do* give away the store.
There are fun little exercises at the end of each chapter, with the answers in Appendix A. (If you plan to use this as a class text, the exercises probably won't suffice; you may want to write more rigorous ones --and more of them.) Covers Perl command-line commands and the most common Perl modules (of the 10,000+ that are out there now). It clarifies the important distinction between Unix "globs" and regular expressions, and shows how to make your programs work with pipes. It does not cover everything (for example, I found no mention of @INC); however, the authors repeatedly refer to "perldoc" to get you in the habit of using it. The index is excellent.
In terms of usefulness, this was a dramatically greater value than the Perl Cookbook, which contains fine points I use only rarely. It's worth much more than I paid for it --an excellent value.
From a programming novice, this book is an outstanding toolAs a non-programmer, I purchased this book to assist me in my duties as a systems administrator. After reading the book cover-to-cover (reading some chapters twice, to make up for my lack of programming experience), I was able to gain a solid understanding of the Perl programming language. Though this book will not make you an expert on the subject, it will give you enough knowledge to begin using Perl for many tasks, and can be a stepping stone to more advanced Perl books (such as O'Reilly's 'Learning Perl', considered by many to be the unofficial bible of the language). For non-programmers like myself, this book is an outstanding learning tool; within a matter of just a few weeks, this book can help you become well-versed in the basics of Perl.
The most entertaining education a geek can get.There's a LOT of bad computer books. There are many good ones. There are a few that are downright fun. If you're not sure you want to learn Perl, get this book. You'll have fun and by the time it's over, you'll have learned it anyway.
Not The BestThis book _is_:
-funny
-relatively concise
-a decent book on the language
This book _is not_:
-good for the beginning perl programmer.
Basically, this book tries to cover too much in some areas and not nearly enough of some other topics. Hashes get their own chapter, but it's miniscule. On the other hand, the intricacies of dealing with list v. scalar context are covered in depth. From personal experience, however, hashes are one of the most useful features of perl.
My suggestion: start with perlmonks.org and the Camel. Between the two of them, you'll find everything you need to know.
Only a overview of PerlIt is a very brief introduction book to Perl without many details. This book gives you the overview of Perl and make you feel you can learn Perl fast and easy(Probably it is the good part of this book). But basically you can not accomplish your daily work task only after finish reading this book. My suggestion is to buy "Programming Perl" and "Perl cookbook" together. "Programming Perl" is a good reference book and "Perl cookbook" is full of examples using Perl. Recommend this book to anyone who only wants to know what Perl is, but not the professionals who need to learn Perl for heavy usage.
From a grateful beginner...A friend of mine, ever anxious that I become a Perl girl, bought me this book. After going through the first half of it, I am actually beginning to conclude that programming is relatively painless...
Schwartz and Phoenix start slow. *Really* slow. I knew a very few Unix commands before opening this book, but that's it. No other programming languages, nothin'. Despite my lack of background, I found "Learning Perl" easy to read, the examples doable, thus keeping me from giving up. (Which, I assure you, I would've done had this been difficult.)
So, my guess is that if you already have a smattering of programming, this book may progress too slowly for your taste. But for the absolute beginner, it's great.
Quite a useful beginning to PerlMy first experience with Perl was a book that I had bought at a used bookstore. It was terrible! After trudging through that book, I learned some basic Perl, and have been able to write CGI.
However, one day I picked up this book and found there was quite a lot of stuff I had missed. I read it all the way through, did all the exercises, and voila! My Perl has significantly improved.
Of all the O'Reilly books on Perl, this one is the best for a Perl beginner to start with. The two best aspects of this book are the careful, though light-hearted explanation of many perl concepts (some I thought I had known) and the assignments at the end of the chapters and the fact that this book prints the answers in the back (surprisingly few books do that).
This book is definitely geared toward Unix, so if you don't use Unix, I would recommend the Win32/Perl book by O'Reilly. Also, there are a couple points where it is difficult to follow, namely chapter 1, and chapter 19. However, I have used this book as a textbook for my Perl class, and found it is the best by far. Most other books are either too easy, or too cursory. It really is the best beginner's Perl book I have found yet.
Anyhow, in summary, despite some small setbacks, I would strongly recommend this book to beginners, or people who want to brush up on their Perl (especially if they learned it elsewhere). Definitely two thumbs up!
Only for absolute starters in programmingDon't know about beginners, but for the experienced programmer who wants to learn perl, this book is a waste of time and money. It teaches far too little on too many pages. You'll read it once (diagonally as we say in german) and then never again. Get the reference and the Perl Cookbook instead and you'll be far better off.
Aaaarrrgggghhhhh!My main problem with this book is as follows: There are exercises at the end of each chapter that are oftentimes impossible to answer given the information presented to that point. For example, at the end of chapter 7, one exercise requires the use of an operator (&&) that is not even explained until chapter 9. I spent an entire day beating my head against this problem, only to give up and find out that I shouldn't have even known the answer to begin with! How frustrating!
Most used Perl book on my shelfThis book covers all the important core constructs in Perl and gets you started writing real programs very quickly. The chapters are concise and easily readable. It took me about two weeks to work through Chapters 1-13 and 19. After that, I knew enough Perl to hack around my Windows NT box.
Each chapter ends with a few appropriate exercises. Although the exercises are brief and easily accomplished, they demonstate the important concepts covered in the chapter. After working through the exercises, you will have working examples (that you coded) illustrating common control structures, I/O, regular expression use, file and directory manipulation, and so on. I learn coding best by doing, not by reading. It's only after working through some code that you really will begin to understand how Perl, or any other language, works.
I have a handful of Perl books on my shelf, but I use Learning Perl and the Perl Cookbook most often. I hardly ever find myself in the camel.
A great start to learning the Perl languageI found this to be a much better text to learn Perl than "Programming Perl". The book starts out with a simple example and then quickly, and I do mean quickly, turns it into a very functional fairly complex example. If your interested in learning Perl this is the book to start with.
Very good bookA very good book to learn the basic fonction of perl...perl is my first programmation language and this book is very helpfull for me
Excellent book; highly recommended beginner to intermediateI knew nothing about Perl; this book is well constructed and the author's sense of humor makes a somewhat serious subject, pleasant to read. My next book will be "Programming Perl" by Larry Wall which is heavily quoted in this book. Unless you are already very familiar with Perl you can't go wrong with this book.
A Great Starter; two tiny problems, not insurmountable
This accessible and practical book can make a Non-Programmer into a Proud CGI Guru, given that the beginner understands some basic logical structures, and is willing to meet the authors halfway.
PROBLEM 1: The book assumes a fairly extensive Unix background, so doesn't always explain itself where that's concerned. SOLUTION: Just ignore the bits that don't apply to you and keep going.
PROBLEM 2: The first chapter can be intimidating. SOLUTION: Understand it to be an overview: "Here's what you can do with perl." Run its programs to see how they work, experiment with them, but don't freak out if you don't understand them completely. Alternately, just skip on to Chapter 2.
We enjoyed Learning Perl, and found it a good beginner's book for this language or for programming in general. The touches of humor could be annoying to some, but we thought they added readability and interest.
Second Edition ... you need to upgrade.I had originally bought the Second Edition years ago and am finding that the two books now have very, very little in common -- it's like reading 2 different books. I'm not sure about the Third Edition, but if you have the First or Second, it would be a good time to upgrade. I really like how this edition is written ... very good read!
A classic...One of the reasons I don't quite think of myself as a computer geek (although I am) is that I don't know some of the "geeky" languages like Perl. I need to rectify that some day, and one of O'Reilly's books will help... Learning Perl (4th Edition) by Randal L. Schwartz, Tom Phoenix, and brian d foy. This is one of the classic Perl guides, and it's well worth owning.
Contents: Introduction; Scalar Data; Lists and Arrays; Subroutines; Input and Output; Hashes; In the World of Regular Expressions; Matching with Regular Expressions; Processing Text with Regular Expressions; More Control Structures; File Tests; Directory Operations; Strings and Sorting; Process Management; Perl Modules; Some Advanced Perl Techniques; Exercise Answers; Beyond the Llama; Index
Randal Schwartz is *the* best-selling Perl author and writer, and it shows in this book. He knows the subject inside and out, and knows how to communicate that knowledge to an audience. In Learning Perl, he and his fellow authors set out to cover the material that you'll use 90% of the time in day-to-day situations. Keeping that as the target, you'll get a lot of value out of working through this title. Each chapter also has a number of exercises at the end that will help you apply and solidify what you just learned. You can even cheat and check out the answers at the end, even though the authors beg you not to... :)
They do assume a background understanding of basic computing and programming concepts, so this wouldn't be the best title if you are looking to learn Perl as your first programming language. Of course, I don't think many people approach Perl from that perspective anyway, so it shouldn't be a problem. With that assumption in place, you end up getting into the meat of Perl quickly. Couple that with a nice conversational approach to the writing, and you've got a book that will take you far. Oh, and don't ignore the footnotes... Some useful information (and great humor) is hidden down there...
If you need to learn Perl and you want to get there quickly, Learning Perl is the way to go. It's stood the test of time by making it to the 4th edition, and there's a reason for that...
boo! Don't get this if your a beginner!The fist chapter is completly screwed up. they start of with the simple "hello world" program then you would think they would build on that. He starts off with a simple but cool program to accept a NAME input and tell you hello, Then you build that by guessing a secret word and hence your into scalar varibles etc... But then all of a sudden he's got you writing out more code but he doesn't explain where that goes... I flip back a page and nope I dont see where we got off track, so then he puts it together and it looks NOTHING like you just been working on! This back and forth goes on and on and is a DISASTER for the 1st chapter read by a newbie. One time your writing a cool program then the next you get lost because the author doesn't explain what the f^&* is going on.??
Then he goes on to say "putting it all together it looks like this" but it doesn't! Loads and loads are left out or just not explained. I've got 5+ years in linux and I challenge ANYONE to explain that 1st chapter in a logical manner.
Very good for the beginnerI've hacked around with perl a little bit and mostly used the faqs and learned things the hard way. This document is aimed right at the beginner, someone who's maybe used perl only for a day or too. On the other hand, it's really nifty that it gives the "tricks" that are difficult to find easily. Highly recommended to at least skim over if you can, and definitely a buy if you're new at Perl.
Actually, it's pretty good for beginners...I found this to be an excellent introduction to Perl. The examples and solutions and the end of each chapter are effective teaching techniques. You don't need to know much about unix, awk, grep etc. to benefit from the book (if you're curious you can look t