免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: oyd_admin

为什么说perl是一团浆糊 [复制链接]

论坛徽章:
0
发表于 2007-02-21 12:13 |显示全部楼层
原帖由 shhgs 于 2007-2-20 18:52 发表
下面我用一个Python maillist里面的邮件来举例(我可以给你查原文,但是是英文的,老外写的)。有一个IBM的员工,在评价这两个语言的时候写道,他看了Python 的手册,大约90页,看完之后他觉得,Python语言已经定义得非常清楚了,没有什么需要补充或者质疑的了。而对Perl来讲,同这本小册子功能比较接近的是Programming Perl这本书。大约1000多页。看完之后,他很怀疑,这本书是不是把Perl全部讲完整了。

这就是Python和Perl最大的区别。


比的是同一类的东西么?  根据 amazon.com
programming python 是 1552 页
programming perl 是 1104 页

这就是Python和Perl最大的区别么 ??

Python的功能比Perl强。有一些诸如Zope,Twisted这样的Framework级别的东西(Perl缺少这种规模的应用)。


这句话一说出口就肯定是错的。 Perl 里又 Mason, Catalyst 你听说过么?

比如,Python的代码一致程度极高。也就是说,如果给定算法,不同的程序员,对于同一个问题,写出的程序是非常类似的。因此Python代码的可读性极佳。当然,这对那些喜欢卖弄茴香豆的四种写法的人来说,未免有些无趣。


编程本应该是个有趣的事情,我喜欢 Perl 并且有人付钱让我编写 Perl 程序,你有什么权利说这些话呢?

最后,Python社区非常的友好,可以容纳不同意见。即便Perler到Python列表大放厥词,Perl版主到Py社区打广告,都没有别删贴,或者改帖子的。相反,Python用户在Perl社区发表如上言论,必定遭到Perler的语言暴力的攻击。此地曾经出现过多次出现过Python用户的帖子被删,或者被改的事情。即便这个帖子,也不能保证能幸免。


又见面了。你的帖子和一年前你在 CSDN 版里贴出来的一样。

每个人都有选择的自由。系统管理员喜欢 Perl 是因为它的语法简洁,很多事情可以 one-liner 。Wall street 的很多金融机构使用 Perl 做数据分析。其他行业的还有搞生物工程的 bioperl 。 你是否也建议他们也放弃 Perl ?  Perl 自从 1987 年到现在,用户群庞大,功能强大,为什么?

做人要宽容,你对 Perl 的仇视是你个人的事情,请不要剥夺其他人自由选择的权利。

论坛徽章:
0
发表于 2007-02-21 15:24 |显示全部楼层
原帖由 oyd_admin 于 2007-2-20 17:33 发表perl确实带给我许多便利,如它的正则表达式,几乎是我不愿放弃perl的唯一理由了。
可是perl却不提供一个数组用来存放匹配结果,而只能通过$1,$2这种形式。于是每 ...

剧汗,你自己给自己提供一个数组来存放不就OK了,难道要语言把什么都准备好?
按你的说法C早就被人骂死了,更不要说汇编之类。
就算有人喂饭,也得自己往肚子里咽阿。

论坛徽章:
0
发表于 2007-02-21 19:07 |显示全部楼层
原帖由 shhgs 于 2007-2-21 07:52 发表
最后,Python社区非常的友好,可以容纳不同意见。即便Perler到Python列表大放厥词,Perl版主到Py社区打广告,都没有别删贴,或者改帖子的。相反,Python用户在Perl社区发表如上言论,必定遭到Perler的语言暴力的攻击。

这说明到Python版的Perl版主比较有礼貌。

论坛徽章:
0
发表于 2007-02-21 21:52 |显示全部楼层
城市某区有两个公厕,一个在珍珠大街,一个在蟒蛇小巷。一日,某O君在街上闲逛,内急,
见珍珠大街公厕,大喜。不想当日便秘,O君久蹲未果,悻悻而出。又走了一会儿,O君见
蟒蛇巷新建公厕,急不可耐,再蹲,居然若有小成。

从此,O君就对珍珠大街上的公厕怀恨在心,一有机会就去堵珍珠大街公厕门口,不让过路的
人用,说:“你们不要上这里,我上次来蹲半天,什么也拉不出来。你们再往下走十来条街,
蟒蛇巷有间新建的公厕,很好拉的。”被堵在门外的人火大了,就骂出象“拉不出S还怨茅坑”
之类很难听的话。

还好人群中有个S君,出来替O君打抱不平,说:“蟒蛇巷那间公厕的优越性是有目共睹的,
我听过一位矮鼻目的厕所专家分析过,珍珠路本来就不宜盖公厕,大家想想,珍珠的形状,大小,
哪一点对上厕所有帮助?我再提醒你们一下蟒蛇的形状,你们再不去那里上,就是有眼无珠了。
还有,这间旧厕所过两年就要拆掉了,你们为什么还要上这里?”

原来S君是在珍珠路边的一家店里打工,店主规定员工一律就近上珍珠路公厕。S君有一次不小
心溅了一屁股,就对老板说以后要改上蟒蛇路的公厕。老板一听火就大了,骂了S君一个狗血
喷头:“你一天想花一个小时走那么远上厕所,还要我付工钱?”S君没办法还是每天上自己
不喜欢的厕所。

论坛徽章:
0
发表于 2007-02-22 02:05 |显示全部楼层

回复 54楼 skrypto 的帖子

有趣,Pearl & Python
oyd_admin & shhgs

论坛徽章:
0
发表于 2007-02-22 02:48 |显示全部楼层
原帖由 redspider 于 2007-2-21 15:24 发表

剧汗,你自己给自己提供一个数组来存放不就OK了,难道要语言把什么都准备好?
按你的说法C早就被人骂死了,更不要说汇编之类。
就算有人喂饭,也得自己往肚子里咽阿。



关于这个问题,可能你的应用中还没有遇到,所以你这样说。
你知道吗?

  1. my $str = "aa bb cc dd";
  2. my $preg = qr/(\w)(\w)/;

  3. while ($str =~ /$preg/g) {
  4. # 循环进行4次
  5. }

  6. while (my @a = $str =~ /$preg/g) {
  7. #scalar @a is 8
  8. last;
  9. }

复制代码

在我做全部匹配的时候,它分次给我匹配结果,这很好
但是我想把结果分次放到数组中,却做不到。

论坛徽章:
0
发表于 2007-02-22 03:40 |显示全部楼层
原帖由 oyd_admin 于 2007-2-22 02:48 发表



关于这个问题,可能你的应用中还没有遇到,所以你这样说。
你知道吗?



  1. my $str = "aa bb cc dd";
  2. my $preg = qr/(\w)(\w)/;
  3. my @a;
  4. while ($str =~ /$preg/g){
  5.      push @a, [$1,$2]
  6. }

  7. print "@a\n"
复制代码


说你拉不出S怨茅坑,还真没冤枉你.

论坛徽章:
0
发表于 2007-02-22 05:35 |显示全部楼层
原帖由 Qiang 于 2007-2-21 12:13 发表


比的是同一类的东西么?  根据 amazon.com
programming python 是 1552 页
programming perl 是 1104 页

这就是Python和Perl最大的区别么 ??



这句话一说出口就肯定是错的。 Perl 里又 Mason, Ca ...


1. 你读过这两本书吗?如果没有读过,你就先去读一下。不要望文生义。Programming Perl和Programming Python虽然名字类似,但是书的内容,结构,针对的读者群,写作的目的完全不同。不用拿到这里来混淆视听。

2. Mason, Catalyst当然听说过。要我再给你补充一个Nagio吗?

再重申一遍,Perl项目在规模上根本不能同twisted比。

Mason只是一个模板语言,这个东西Python的实现不下10个。Zope里有DTML, ZPT , CheeryPy里面用Cheetah,Karigell里面有pih, hip, django, pylon, 里面各有自己的实现。此外还有一个PSP。Mason这个级别的东西,在Python世界里,根本不值一提。

catalyst的规模比Mason大些,但是放到Python的世界里,也只能算是中型项目。跟django,nevow, turbogears, cherrypy, pylon之类的项目相仿。跟Zope就没法比了。要知道,Nevow只是twisted的一个衍生项目而已。

其实只要比较一下这种大型项目的数量就知道Perl有多衰了。在web framework领域,Perl只有一个Catalyst,一个MoveableType可以拿出手。相比之下,Python的问题是,架构太多了,结果自相残杀下来,没有一个能占据压倒性的优势。确实,Python的web framework作起来太容易了。

Perl真正比较强的地方,还是在系统管理方面。Nagio是一个很不错的项目,Python在这个地方,还没有能和Perl竞争的东西。倒不是Python开发不出来,而是因为很多系统管理员只会用Perl。这也正是为什么我还得用Perl的原因。

3. 答非所问。你唧唧咕咕说了半天,跟我说的,Perl的TIMTOWTDI只是茴香豆的茴字的四种写法,有什么关系吗?你挣钱和我鄙视Perl有什么关系吗?我总结的Perler狡辩的策略一览表你看过没有?

最后,再次老调重弹,拿Perl的用户众多,历史悠久说事。当一个语言仅仅依靠这两个东西生存的时候,基本上就是它马上要退出历史舞台的时候了。这两个理由,说得好听一点是群众基础广泛,说的难听一点,就是你最后说的那句,"你是否建议他们放弃Perl?“。这就像传销上线在劝导他的下线一样。你觉得这个游戏有希望吗?

每个人都得宽容。当然我很宽容。我没有删别人的帖,也没有禁止别人发言,更没有限制你去喜欢Perl。我只是告诉大家,Perl有很多很糟糕的东西,而Perler的很多宣传都是言过其实的。难道这也不行了吗?难道Perler的宽容是有选择的吗?

论坛徽章:
0
发表于 2007-02-22 17:06 |显示全部楼层
原帖由 shhgs 于 2007-2-21 07:52 发表
Perl和Python最大的区别在于,Perl没有规律,或者说没有很容易总结的规律。所以Perl的语法非常的不一致。很多时候甚至是自相矛盾,非常的荒谬。

Python有一套很小,但是非常一致的规律。因此你可以很轻易地掌握 ...

比如,很多Python程序员都是从Perl转过去的,几乎没有人是从Python转到Perl的。

比如,很多Python程序员都是从Perl转过去的,几乎没有人是从Python转到Perl的。

这个结论哪儿来的,有确切的根据吗?

论坛徽章:
0
发表于 2007-02-22 17:24 |显示全部楼层
原帖由 skrypto 于 2007-2-21 21:52 发表
城市某区有两个公厕,一个在珍珠大街,一个在蟒蛇小巷。一日,某O君在街上闲逛,内急,
见珍珠大街公厕,大喜。不想当日便秘,O君久蹲未果,悻悻而出。又走了一会儿,O君见
蟒蛇巷新建公厕,急不可耐,再蹲,居然若有小成。

从此,O君就对珍珠大街上的公厕怀恨在心,一有机会就去堵珍珠大街公厕门口,不让过路的
人用,说:“你们不要上这里,我上次来蹲半天,什么也拉不出来。你们再往下走十来条街,
蟒蛇巷有间新建的公厕,很好拉的。”被堵在门外的人火大了,就骂出象“拉不出S还怨茅坑”
之类很难听的话。

还好人群中有个S君,出来替O君打抱不平,说:“蟒蛇巷那间公厕的优越性是有目共睹的,
我听过一位矮鼻目的厕所专家分析过,珍珠路本来就不宜盖公厕,大家想想,珍珠的形状,大小,
哪一点对上厕所有帮助?我再提醒你们一下蟒蛇的形状,你们再不去那里上,就是有眼无珠了。
还有,这间旧厕所过两年就要拆掉了,你们为什么还要上这里?”

原来S君是在珍珠路边的一家店里打工,店主规定员工一律就近上珍珠路公厕。S君有一次不小
心溅了一屁股,就对老板说以后要改上蟒蛇路的公厕。老板一听火就大了,骂了S君一个狗血
喷头:“你一天想花一个小时走那么远上厕所,还要我付工钱?”S君没办法还是每天上自己
不喜欢的厕所。



  你忘了,其实还有个H君,据本人说其对珍珠大街上的厕所深有研究,
经常斥责有些如厕未果(偶尔便秘?),来向他人讨教如厕经验的
只不知为什么,当S君在珍珠大街厕所前造谣时此君从不出现,是怕了?还是不屑与S君理论,一直是个谜
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会 限时8.5折

【架构革新 高效可控】2020年8月17日~19日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP