在/.cn上看见一则<全球编程语言流行程度列表>,让我没有想到的是Perl居然排第四,只居于Java, C和C++之后。
恰好两周以前公司里面我原来所在的部门跟BT(Britian Telecom, 可不是BitTorrent)有个项目是用Perl开发的,偌大一个部门居然没有人会,我以前的主管打电话给我让我过去支援两周。
对 于Perl 4我倒是比较熟悉,但对Perl 5以后的包、引用等的了解就少一点。考虑到很久没怎么用了(后来投身到Python去了),于是赶紧找了两本电子书(一本Advanced Perl Programming, 一本Perl Cookbook)来翻。由于我还是更喜欢纸做的书,周末还打算去书店淘两本,谁知道跑了两家大书店,两家小书店,都没有几本Perl的书(仅看见 O'Reilly的Learning Perl, 还有一本Perl for C++ Programmer, 好像还有一本CGI Programming with Perl)。china-pub和当当也没什么好的。记得以前还常常看到一些的啊,怎么...也怪不得他们没多少人会了。
回头说说Perl这门语言,这个东西约定的东西太多了,到处都是约定、特殊变量、特殊语法。举个例子,Advanced Perl Programming第一章讲引用(reference):
$s = \('a', 'b', 'c'); # WARNING: probably not what you think
$s指向什么?指向('a', 'b', 'c')这样一个list么?嘿嘿,可不是:
As it happens, this is identical to
$s = ('a', 'b', 'c'); # List of references to scalarsAn enumerated list always yields the last element in a scalar context (as in C), which means that $s contains a reference to the constant string c.
用Perl写东西,有些时候写起来还挺顺,但调起来就够费劲的,而且先不多写点注释的话回头就看不懂了。至少后来很多小玩意儿改用Python来做就易写易读了。
--------BTW: 看见Delphi/Pascal的流行程度不断下降,很有些难过。前两日看见Bob Swart(Dr. Bob)在他的网站上打出了Forever Loyal to Delphi的标语,觉得都到了这个地步了,更是黯然。
没有评论:
发表评论