||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Perl, web programming, computer science
Title: Computer Science and Perl Programming
Author: Jon Orwant (Ed)
Level: Perl programmers - all levels
Verdict: Interesting even for non-Perl programmers
This is a very mixed bag of a book, clearly reflecting it?s origins in the pages of the Perl Journal. A compendium of articles culled from the first five years of that august journal, this is an entertaining and illuminating read, even for a Perl novice. What it is not, (and it?s worth making this clear right from the beginning), is a ?how to learn Perl? book. Neither is it a Perl cookbook or a tips and trick compendium, though that?s not to say there aren?t a few good tips worth picking up here ? there certainly are.So, if it?s not tutorial, cookbook or programming manual, what is it? First and foremost is this an anthology of articles which use Perl to illustrate a number of concepts from computer science ? hence the title of the book. Topics include Random Number generation, building parse trees, compression algorithms, how regular expressions work, caching etc. Along the way there are also some tutorial sessions which would work well in tandem with other material for somebody learning the language, though it isn?t really sufficient to learn the language from scratch. Generally the quality of the articles is high, and there are some authors, like Mark Jason Dominus, who deliver some really interesting pieces. The piece on memoization (results caching), for example, is a gem. As is the article on how regexes work. This is the kind of material that is worth reading no matter what programming language you use. Aside from the technical side of things, the quality of the writing is also extremely high. Given the range of subjects and authors this is a bit of a pleasant surprise, and it suggests that there?s something about the Perl community that values clarity of thought and communication. Compare and contrast with the almost unreadably terse one-liner that many a Perl hacker prides him or herself on? In addition to pure comp sci topics, the book also covers more practical topics, including network programming, databases, programming techniques, program design and so on. As with the other topics, readers are directed to CPAN to pick up relevant modules. If there is one thing that this book proves once and for all, it?s that Perl really is a general purpose programming language and not a tool limited to this or that domain. If you?re not convinced than a dip into this book ought to change your mind once and for all.