You are on page 1of 2

Book reviews

Perl Programming for Biologists D. Curtis Jamison John Wiley & Sons; ISBN 0 471 43059 5; 184 pp.; 27.95 (pbk); June 2003
Computers are playing an increasingly important role in biological research and are therefore becoming an integral part of the biologists toolbox. Computers are used in biology laboratories for manuscript preparation, data collection, database access and data analysis. Standard commercial applications, such as those available in any ofce package, are somewhat limited when the researcher wishes to perform detailed analyses of his/ her data. Knowledge of a programming language therefore becomes an invaluable resource, as it affords the researcher almost unlimited exibility with respect to the analyses he/she wishes to perform. Unfortunately, many programming languages are somewhat cryptic and nonintuitive, and can very quickly become frustrating for the occasional programmer. Perl is becoming a standard in bioinformatics because, as D. Curtis Jamison states in the introduction of his book, it is less structured than traditional programming languages. According to Larry Wall, the author of Perl, the acronym PERL stands for Practical Extraction and Reporting Language, although he admits it could also stand for Pathologically Eclectic Rubbish Lister. Regardless of the origin of the acronym, Perl offers biologists a quick and dirty alternative to more complicated programming languages. This book attempts to present the scripting language in a clear and application oriented way to biologists, leading them from the basics of scripting up to object oriented programming. In good computer science tradition, Perl Programming for Biologists introduces programming in Perl with the scripting of a Hello World program. This introduces the concepts of input, variables, output and how to get a Perl

script to run. The book assumes basic understanding of Unix commands, and supposes that the Perl interpreter is preinstalled on the readers machine. Most standard Unix distributions currently do include a Perl interpreter, and it is often installed by default. Macs also come with Perl bundled in their standard OS X distribution. The biologists I have met in my career are some of the most patient researchers I know, as an experiment they run can often last many weeks with only very slim chances of success. However, their patience quickly comes to an end when it comes to the use of computers, as they rightfully expect the bugs to be sorted out. In that respect, given the target audience of this book, a small practical chapter in the next edition with easy to follow instructions on installing a Perl interpreter on all three major platforms (Unix, Mac and Windows) would be a great addition to this excellent text. In the meantime, clear installation instructions can be found online.1 Furthermore, the author might want to mention in future editions that other up and coming scripting languages such as Python2 are also popular bioinformatics tools. The 184-page book is split into three parts (The Basics, Intermediate Perl and Advanced Perl) and essentially covers the major features of Perl. The basic chapters cover variables, data types, arrays and hashes as well as control structures (if:then:else type formatting). In each section, biological examples are used to illustrate the exact mechanisms of data storage in Perl. For example, a series of genes and their sequences are used to illustrate the principle of maintaining a hash. This has the advantage of presenting the reader with data that he/she may already be familiar with and a way to treat it within the Perl context. The intermediate part of the book (Chapters 58) covers the basic principles of subroutines, string and le manipulations, as well as the Perl modules and packages. Emphasis is placed on the use of CPAN (Comprehensive Perl Archive Network),

Downloaded from http://bib.oxfordjournals.org/ at Universidad de Oviedo. Seccin de Adquisiciones on March 13, 2014

& HENRY STEWART PUBLICATIONS 1467-5463. B R I E F I N G S I N B I O I N F O R M A T I C S . VOL 5. NO 1. 9396. MARCH 2004

95

Book reviews

a repository of Perl modules available free of charge. CPAN is clearly a big asset to any Perl programmer, as he/she may save a signicant amount of time by using available scripts rather than rewriting everything from scratch. The advanced section covers references, object-oriented programming and BioPerl. Perl is not typically considered an object-oriented language, yet it is possible to write objectoriented code in Perl. This simplies some of the code, and a good example is provided showing the advantages of using object-oriented programming to generate a series of random sequences from a single object. The last chapter of the book provides an overview of BioPerl, a series of packages specically designed for bioinformatics applications. Perl Programming for Biologists is an appropriate title for this book that retails for 27.95. It should give the reader a good sense of the power of Perl as a data analysis tool. The programming challenges at the end of each chapter

would make ideal homework assignments for a class, and the amount of material in each chapter is well balanced such that the chapters could be used as a curriculum outline. Most aspects of programming principles are covered, and the book would work well as a template for an introductory graduate programming class. However, algorithm development and implementation are not broadly addressed, as the purpose is to provide practical skills in programming. I would not be surprised to see Perl Programming for Biologists nding a space on the bookshelves in many biological laboratories in the near future.
Alain Laederach Department of Genetics, Stanford University

Downloaded from http://bib.oxfordjournals.org/ at Universidad de Oviedo. Seccin de Adquisiciones on March 13, 2014

References
1. URL: http://www.perl.org 2. URL: http://www.python.org

96

& HENRY STEWART PUBLICATIONS 1467-5463. B R I E F I N G S I N B I O I N F O R M A T I C S . VOL 5. NO 1. 9396. MARCH 2004

You might also like