[PerlChina] Perl with opensources

agentzh agentzh at gmail.com
Sun Oct 5 23:39:46 PDT 2008


2008/10/6 Achilles Xu <formalin14 at gmail.com>

>
>
> 关于perl和python,从表面或者纯理论上看,python是比perl要动态好多。perl里高深的glob/符号表技术,在python里是非常基本的自醒能力。
>

不太认同 python 比 perl 动太好多的提法。。。虽然我不是 python 程序员。自省在 perl
里比较奇怪是因为语言设计者当时认为只有高级程序员才用得着它们,所以把接口设计得奇怪一些,以免初学者滥用(当然了,这只是一种解释),呵呵。

Perl 的 OO 模型是非常灵活和奇异的,在上面可以建立全新的 OO 模型,比如 Prototype based, Inside-out, 还有
Perl 6 的 OO 系统(通过 Moose.pm),以及其他的类型。可能这在其他语言还是极少见的,呵呵。不过这些年 Larry 也后悔当初把
Perl 5 的 OO 模型设计得"too orthogonal",所以才有了 Perl 6 中基于 role 的 OO 设计,呵呵。


>
> 从纯理论上一点一点地比较python和perl,好像python总是比perl要有优势。只是奇怪的是,实际使用当中,好像用perl能更快地写出更健壮的程序,而python则不然。
>

呃。。。那个要看谁来比,以及怎么比了。。。呵呵。。。


>
> 可能是python太动态了,很多时间都浪费在运行调试上了。(错误只有在特定的分支上才会出现)。
>

好吧。。。为什么不 TDD 一把?

以前觉得动态很好,现在反而希望编译时检查能严一些了。最近看了erlang,它提供的语法习惯使得你的程序编译通过以后,bug很少,是另一种不错的体验。
>

呃。。。如果写 Haskell 代码(通过 GHC 编译)的话,应该更能体会到这一点了。。。毕竟 Erlang
还只是弱类型的函数式语言。。。确实,类型系统能在编译时帮我们排除掉许多 bug 和错误,即使远非全部,但也相当可观了。这也是为什么许多 Haskell
程序员喜欢吹嘘自己的代码一旦通过 GHC 的 typechecker 成功编译后,一运行就是"很正确的",呵呵。

我在头脑不清楚的时候比较喜欢 Perl 的方式。。。醉拳也致胜,哈哈!

-agentzh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/china-pm/attachments/20081006/ad736b8a/attachment.html>


More information about the China-pm mailing list