加入收藏 | 设为首页 | Life家族 | SCMLife | RMLife | PMLife | SQALife | TESTLife | 企业VIP专区 | 中文化荣誉殿堂

查看完整版本: 几本中文Perl电子书

somis 2007-7-18 15:10

几本中文Perl电子书

[font=楷体_GB2312][color=Purple][size=4][b]现在书店的Perl书几本都绝版了,网上好不容易找到几本中文的,
推荐如下,希望对开始学习perl的朋友有所帮助[/b][/size][/color][/font]
Perl语言编程
[attach]8313[/attach]
作者:Larry Wall, Tom Christiansen, Jon Orwant 何伟平 翻译 转至 CU论坛
[attach]2750[/attach]
[attach]2751[/attach]
[attach]2752[/attach]
Perl语言入门(第四版)附加的练习题答案,为tar.gz格式,winrar可以打开。
[attach]7484[/attach]
Perl高级编程(中国电力出版社)
[attach]7732[/attach]
[attach]7728[/attach]
[attach]7729[/attach]
[attach]7730[/attach]
[attach]7731[/attach]
[attach]7733[/attach]
[attach]7734[/attach]
[attach]7735[/attach]
[attach]7736[/attach]
[attach]7737[/attach]



[color=Blue][size=4][font=楷体_GB2312][b]增加一本英文的,2007年出版:[/b][/font][/size][/color]
[attach]4690[/attach]

[attach]4691[/attach][attach]4692[/attach][attach]4693[/attach][attach]7729[/attach][attach]7729[/attach]

[[i] 本帖最后由 somis 于 2008-5-16 09:54 编辑 [/i]]

somis 2007-7-18 15:12

Perl6整个项目过去4年的开发过程: Perl6语言的设计:

  在perl6 语言的初始设计的时候,首先成立了一个rfc(Request For Comments)项目,就是向所有关心perl6语言的人邀稿,大家将自己想在perl6语言中想实现的功能写成rfc,然后发给larry wall,larry wall就会想办法在perl6中帮你实现。最后larry花了一整年的时间把各种rfc中描述的特性整合到新的perl6语言中(在开发perl5的时候,他们也是用了快一整年的时间将很多其他语言的优点都整合到perl5中来,Perl过去的版本也都是这样,到处偷学,采纳各种语言好的想法)。

  Larry wall收集整理完成rfc后,从2001年起就不断的开始写启示录(Apocalypses,希腊文),描述perl6的新功能。启示录的格式与 larry wall过去写的Programming Perl(相当于perl5的圣经)这本书的格式是一样的,例如:在Programming Perl中的第6章描述的是子程序那么在启世录的第六章也是写的子程序。

  由于启示录对于perl6的描述并不是十分详细,而且写作的时间已经过去了3年,所以在2004年起larry开始根据自己的启示录编写纲要(Synopsis),来对相应的启示录章节做总结,并且更加专业的。到了2004年12月,perl6语言的大部分设计就都已经写在一系列的纲要中,而且已经稳定到了可以实际运用的程度。
Perl6的编译器的开发:

  在2000年的10月YAS在两个星期中筹集了75000美金来雇用Damian Conway(perl核心开发人员)2001年一年的时间,可以让他专门去开发perl6。

  在2002年Damian仍然继续专门负责用perl5来开发一个perl6的rules。

  在2003年Damian完成了Perl6::Rules模块,这是一个在perl5上做perl6 rules的一个雏形,是整个perl6编译器的关键部分。但是开发出的产品由于perl5自身的原因,很不成熟,无法稳定运行。

  所以3年过去了,没有成熟的perl6到parrot的编译器出现。过去开发perl6编译器的路线是错误的。

  在2005年初,根据一份perl6的建议书,perl6的开发计划再从新采用 C 语言实作 Rules 引擎(即为 PGE),来开发perl6的编译器。

  2005年2月,唐开始了pugs,另一个独立的perl6编译器的开发。
Parrot的开发:

  在2001起由Dan Sugalski负责开始开发parrot。

  从2001年8月开始放出代码,第一个版本是0.0.2版,到2005年1月已经放出过14个版本,最新的版本是0.1.2版。

  现在已经有些语言可以编译成parrot的字节码。你现在也可以用parrot的汇编语言写一些简单的程序在测试解析器上运行,parrot已经支持绝大多数的数学运算,一些基本的字符操作和一些条件运算。

  整个parrot开发速度已经超过了预期,而且还在快速进行当中。当然一些parrot子系统的开发还要进一步加快。
Perl6编译器开发过程中出现的问题:

  当最初宣布这个perl6的开发计划时,整个perl6的社区非常的高兴,大家都在等待perl6的成功运行。但是2002-2004三年的时间过去了,没有一支perl6的程序跑得起来。现在parrot的程序其实已经很稳定了,但是perl6语言到parrot的编译器一直没有实现(Parrot现在都可以跑python了)。所以到了2004年的年底大家已经绝望了,感觉perl6的实际运行遥遥无期。在这3年期间larry仍然一篇一篇的写启示录, damian一篇篇的给启示录写注疏(对于启示录中的内容实际在日常使用时的语法),可是却完全没有一个真正的perl6语言实现。

  就有一个小笑话:有人问写的perl6的程序从哪里跑?damian会说:“在我脑子里跑”。可是把他从澳洲请过来专门跑perl6程序也太贵了,而且他也不可能夜以继日的专门跑perl6程序。:)Parrot本来设计起来是要跑perl6的,但是现在似乎parrot什么都可以跑就是没法跑 perl6。
关键是问题到底出在什么地方呢?

  问题就是当初perl6的设计是要实现自足执行(self-hosting)。对于所谓的自足执行举例来说明:c的编译器是由c写的, c++的编译器是由c++写的,java的编译器有一些是由java写的,c#的编译器是由c#写的。以此类推,非常多的编译程序都是用自己来写自己的编译器,用自己来写自己的执行环境,这就是所谓的自足执行。可是我们现在所熟悉的脚本语言python php perl大都是用c来实现的,就不是自足执行,这带来的问题是你要实现任何新功能都要进入另一个语言去改,而且改了以后会影响全部的语言。你不能用自己的语言来写一个新的功能。所以在设计perl6的时候,larry就说perl6要实现自足执行,perl6要自己执行自己。这就产生了激活问题 Bootstrapping(就像一个人想提着自己的鞋带把自己提到空中,通俗说就是鸡生蛋蛋生鸡的问题)。如果一开始什么也没有的话,就无法激活。
  Perl5的时候的语法是用的yacc语法,yacc
  网址:[url]http://www.lysator.liu.se/c/ANSI-C-grammar-y.html[/url]

  是一个用c写的语法解析器。他能帮你把你写的程序解析成程序能够理解的语法树。

  但是这种语法的灵活度比较差。所以在开发perl6的时候,就决定使用perl6 rules来解析perl6的语法,也就是所谓的自足执行。

  perl6的rules是对perl5中正则表达式的从新改进,而由于决定用perl6 rules来解析perl6的语法,所以rules在perl6中就占有了核心的地位,而问题就是出在了rules的编写上:

  最初的计划是利用 Perl 5 来解决自足执行的问题:先扩充 Perl 5,使其执行于 Parrot 虚拟机器上(透过 B::Parrot 或 Ponie),再以 Perl 5 来实际编写 Perl 6 编译器,最后透过 p5-to-p6 转换器将编译器转译成 Perl 6。不过,虽然Damian编写的Perl6::Rules模块确实在 Perl 5上实现了Rules 的雏型,但对于建构编译器而言仍显得不够成熟。

  所以过去3年perl6编译器的开发,走了一条错误的道路,整个开发perl6编译器的计划必须从新修正。

shaojing 2007-7-18 19:26

之前参加培训的时候,老师曾经说过会用到这个语言,先了解一下。谢谢了!

carry1999 2007-7-19 23:31

被老大要求看perl

觉得头昏眼花中。。。

谢谢 先

chris-yue 2007-7-22 20:34

老大要我们学,不过确实是挺有用的,下个初级的先看看

happygod 2007-7-23 10:09

从用CQ开始一直在用perl写脚本
但是还没有系统的学习过perl
谢谢lz的资料

Snow1 2007-7-25 14:43

最近在自学PERL,谢谢楼主的资料。

还有一个问题:大家单位用perl 作些什么呢?

somis 2007-7-25 15:14

主要用来做配置管理工具clearcase、clearquest的自动化管理,编写一些管理脚本。

次要的作为操作系统的管理工具,编写一些unix,linx的下的管理脚本。

Snow1 2007-7-25 15:53

回复 #8 somis 的帖子

谢谢 somis。

关于“次要的作为操作系统的管理工具,编写一些unix,linx的下的管理脚本。”能再说的详细些么? 需要写哪些管理脚本呢?
用sh 脚本是不是也可实现呢?

xiyuan119 2007-8-9 12:23

[url]http://www.builder.com.cn/perl.shtml[/url]
有几篇文章还不错

xiaoyi0407 2007-8-18 07:21

现在在自学,看的都是英文版的电子书,头有点痛,虽然语言比较简单,谢谢楼主啊,太感激了

foxiaowo 2007-8-21 10:44

perl初学,刚刚找到这里,谢谢楼主。::em57:: ::em57::

zongzi 2007-8-22 17:46

学好Perl,而且不用很精通,就能轻松解决很多问题。强烈推荐。

Jane.fwp 2007-8-23 09:57

有没有介绍在perl里面访问数据库的书?在网上看到的是一些比较零散的介绍,感觉连贯不起来::em54::

mactang 2007-9-4 13:30

好东西,赶快下了学习!

ManUtd_Giggs 2007-9-20 22:43

好好学习 天天向上啊
perl或shell都要看看

Pakistani 2007-9-23 00:13

掌握Perl对提升配置管理的水平的却有很大的帮助。否则版本构建的效率就太低了。脚本语言对于对于配置管理员来说,其实是比较重要的。

tianting004 2007-10-11 15:47

per  该如何入门呢,怎么才能学好呢?

tianting004 2007-10-11 15:55

确实很管用 但是不知该如何学起,给提点建议?

somis 2007-10-11 16:41

多学多练

先看书学基础,看别人的脚本学实用,把实际工作和脚本编写结合起来---领悟。

然后才有进步吧,我这样学习的。
页: [1] 2 3
查看完整版本: 几本中文Perl电子书