你知道源自马太福音的计算机语言是什么吗?

本文回顾了Perl语言的发展历程,强调其在编程语言中的强大和灵活性,以及它对PHP、Python等语言的影响。Perl的应用广泛,从知名网站到社区论坛,尽管面临后浪追赶,但它在历史上扮演了关键角色。

编前语:

从计算机诞生之日起,计算机编程语言就是人与计算机之间传递信息的重要工具。

在计算机发展的半个多世纪中,正如从甲骨文到现代汉字的演变历程一样,计算机语言也经历了一个从低级到高级的演变过程。

Perl是一门很强大的语言,它的英文全称Practical Extraction & Reporting Language 。在Perl之前,也许你用过sed、awk以及各种shell脚本语言,甚至BASIC、FORTRAN,但它们与Perl相比都难以望其项背。

今天仍很流行的PHP、Python、Ruby不是基于Perl就是被Perl激励而产生的。比如Python的作者Guido Van Rossum公开表示Python的核心理念是与Perl是背道而驰的。Python认为实现一个目标应当只有一种方法——一种最优的方法;而Perl通常允许你用多种方法实现,给你最大的自由,不过 Guido 也承认他设计 Python 受到很多 Perl 的启发;此外,PHP、Ruby 也都从Perl 那里继承了很多语言特点。

图:Perl 创始人 Larry Wall (拉里·沃尔)

 

作为Perl 创始人的Larry Wall (拉里·沃尔),于1954年出生于美国的第二大城市洛杉矶。在这座“被上帝眷顾的城市”里,Larry Wall 同样也是位天选之子,他曾两次获得IOCCC(全球难以读懂C程式码比赛)的胜利,同时还成为自由软件奖(Free Software award)第一届的获得者。

令人震惊的是,作为Perl语言的缔造者,编程界祖师爷级别的 “大牛”,Larry的教育背景异常复杂,他先后学习了化学、音乐、医学和自然语言学,但就是没有接受过正规的计算机科学教育。Larry Wall 喜欢把 Perl 叫做一门"粗陋的"语言,他是这样描述 Perl:他是一个顺从,温顺的仆人,只是为了"让他服从于你的需要"而存在。有意思的是,为什么Perl的logo是只骆驼,这中其实也有段掌故。当年,Larry Wall为他设计的Perl语言写了一本书《Programming Perl》,而O'Relly出版他这本书的时候在封面上配了一只骆驼。于是这本书就被爱好者们形象地称为“骆驼书”,而Perl语言的标志也就由此变成了一只骆驼。

 

Perl应用之广泛从下面这些知名网站的列表中可见一斑:

·Slashdot:虽然属于科技新闻网站,但是很多人是为了看留言非新闻事实本身。知乎也许算是Slashdot的一个变种?!;

·Craigslist:笔者曾在上面买过二手货、租房子……类似与国内的58同城;

·Ticketmaster:美国最大的票务在线网站;

·Priceline:中国版有携程、艺龙等,不过业务模式不同;

·LiveJournal:中国版有新浪博客;

·IMDb:豆瓣电影也许可以比作IMDb。

Perl是解释性语言,但是其语言的灵活性足以能支持程序猿/媛们写出风格迥异的程序:C语言类、OO类的,如C++、Perl类的或天书类的。复杂的awk/sed会像天书一样,Perl可以写得比天书还复杂。

对于喜欢 Perl 的人来说,Perl像是一门编程语言的圣经,据说这和其作者 Larry Wall 的宗教信仰以及他的学语言学的背景有关。显然,Larry在设计 Perl 之初,就把之前所知所学融汇其中,比如,据说Perl的名字来源就是出自马太福音中的“Pearl of Great Price”(无价之宝),Perl更像一门自然语言,如类C语言中的variable / function / accessor等在 Perl 中用noum/ verb / toplicalizer 来取代。Perl语言爱好者称之为"一种拥有各种语言功能的梦幻脚本语言"、"Unix 中的王牌工具"。

优点:简单、强大、灵活,一般问题几行代码轻松搞定,稍复杂的问题代码也不会超过一屏。

缺点:过度冗余的语言(戏称“了write-only”)、代码难以阅读,书写不够优雅。

时至今日,Perl虽已被后起之秀赶超,但其曾在江湖中起到的承上启下的作用依旧熠熠生辉!历史不会忘记!

后记:

以上文章节选自《程序员面试手册》,意犹未尽的童靴可以阅读该书。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值