大约是20年前(几乎正好是网络时代的一个周期),Randal Schwartz 写出了第一版的 Learning Perl 。在随后几年里,Perl有了大幅度的增长,它从一个主要被 Unix 系统管理员使用的很“酷”的脚本语言,发展为一个运行在人类已知的几乎所有计算平台上的强大的面向对象的语言,呃,这么说或许有些夸张了。
        在第六版中, Learning Perl  保持了原有的大小,大约有300页,并继续覆盖了相同的内容,以保持内容的紧凑和方便初学者。但这里还有更多了关于 Perl 的东西需要学习。
        Randal 把本书的第一版叫做 Learning Perl Objects, References, and Modules ,我们将之重命名为 Intermediate Perl但我们觉得它更应该叫做 Learning More Perl这本书纪录了一些 Learning Perl  没有的东西。我们将演示如何用 perl 写出更大的程序。
        在 Learning Perl 中,我们设计的每个章节足够小,以致于可以在一小时内阅读完。每章结束时会有一些习题,它们可以帮助你熟悉刚刚学过的内容,并且这些习题的答案就在附录里。而且,向 Learning Perl 学习,我们把书中使用的材料都部署在教学环境中。
        除非我们特别标明,否则本书中一切均适用于所有平台上的 Perl ,例如 Unix,Linux,Windows平台,ActiveState 的 ActivePerl,Strawberry Perl 或 其他各种现代的  Perl 的实现。学习这本书,你只需要已经熟悉 Learning Perl 中的材料和有更进一步的野心即可。
        在你看完这本书之后,你会看到你想要知道的大部分的 Perl 的核心概念。在学习序列中的下一本书是 Mastering Perl ,它的重点在于,如何运用你已经学到的东西写出高效的和高可靠性的 Perl 程序,同时还会教你如何管理 Perl 软件开发的生命周期。
        在你的 Perl 生涯中,你也需要 Programming Perl 这本书,它是 Perl 语言的权威。

本书结构

        本书主要包括三个部分。第一部分介绍的是引用,它是复杂数据结构关键,也是面向对象程序设计的关键。第二部分讲述的是对象和 Perl 如何实现面向对象编程。第三也是最后一部分,讲述了 Perl 的模块结构,测试和对我们工作有帮助的社区的建设情况。
        你需要从头到尾按顺序的阅读本书,并坚持做练习。本书的每一章都是建立在前面章节的基础之上,我们在抛出一个新话题的时候,会假定你已经了解了前面章节中的所有内容。

第一章,介绍
        对本书内容的介绍。
第二章,使用模块
        使用 Perl 的核心模块和其他人贡献的模块。在随后的内容里,我们将会展示如何创建自己的模块。不过在此之前,你仍然可以使用你已经拥有的模块。
第三章,中级基础
        讲述一些在本书后面会用到的 Perl 的中级技巧。
第四章,介绍引用
        介绍了一个水平的重定向(!-_- 理解不能,直译 -_-!),它允许相同的代码操作不同的数据结构。
第五章,引用和范围
        学习 Perl 是如何设法跟踪指向数据的指针的,阅读关于匿名数据结构和自动激活(!-_- 或许是这个意思,看到后面的章节后再回来看究竟该怎么翻译 -_-!)的介绍。
第六章,操作复杂的数据结构
        创建,访问和打印任意深度和嵌套的数据结构,包括数组的数组和哈希的哈希。
第七章,子程序的引用
        捕获一个子程序的行为,这个子程序是你动态创建和即将执行的。
第八章,文件句柄的引用
        把文件句柄存放在标量变量中,这样你可以很轻松的在程序中使用它或存放在数据结构中。
第九章,正则表达式的引用
        编译正则表达式但不立即使用它,而是把它作为更大的模式(!-_- 应该是正则表达式的同义词 -_-!)的一个组成部分
第十章,实用的应用技巧
        复杂操作的排序,施瓦茨变换,和用递归定义数据来工作




09-06 18:16