合上书,五味杂陈。期间旅程,有因顿悟而欣喜,有因迷茫而忧郁,有因好奇而憧憬,有因晦涩而烦躁,有因好恶而斥责,有因困惑而愤怒……各色滋味聚上心头,汇成一股七彩斑斓的钦佩。
## 欣喜
看到那十四行诗般的罗马数字DSL,不由惊叹method_missing还可以这么用。最早是在Peter Cooper那个神奇的200行自顶向下递归解析器里隐约感受过它的魅力,可没想到竟能如此简洁地重现。
见过Io的Singleton实现才深切地体会到世界可以如此简单。
从Ruby到Io,再到Clojure,当重写unless的例子再度出现,那一瞬间,我顿悟。宏,这个不可捉摸的神秘概念竟是如此简单,这就是执行之前所做的文本替换啊!
还有那两句判断八皇后是否同对角线的Prolog断言,诡异的加减背后竟是极简的斜率公式。
……
那遍地的宝藏,有时带给我惊喜,有时却是入宝山空手回的遗憾。
## 抑郁
Ruby的继承图啊,多少次让我不成眠,魂梦牵。
Io啊,你家的if/then/else到底是方法还是语法糖?你手下的call一族究竟是何方神圣?
Clojure的解构啊,表里如一的你对待map的方式为何如此不同?
Haskell啊,你竟如此残忍,刚抛出甘甜的语法糖,让我回想起Lisp的美好,紧接着就打开monad的魔盒,把我推进绝望的深渊。
并发啊,你那STM、actor、future十八般大招招招要我肝肠寸断。
……
坑。蜜月之后是爱情的坟墓,清新的语法身后是逻辑的巨坑!
## 憧憬
虽然Io的语法让我万分纠结,但是我还是久久不能对她的简洁释怀。我真心觉得可以读懂她,真心希望见到那传说中寥寥数笔实现C子集的40行真经。
我还憧憬见到更多的宏,让我更全面、更深入地揭开她的神秘。
## 愤怒
我将自己的健忘迁怒于Bruce的惜字如金,虽然你在Prolog的第一天第一节的第一段里就明明白白地写上了“以大写开头的词为变量”,但我还是瞬间忘记,长久地纠结What、Who是不是关键词。
还有译者们,我知道翻译遍尝百草的辛苦,更深知遍尝百草却不得解的痛苦。但仍然抑制不住我对把“等价推断”译为“合一”的愤怒。好吧,其实我反感的是那些生搬硬套的直译。可这也是因为我对这本书过分怜爱,过分苛求。
## ……
## 我心中的她
首先,我必须斥责Scala、Clojure,这俩Java家的私生子,口是心非的混蛋,口口声声述说着自己如何如何乖巧可人,背地里干着恬不知耻的勾当,还联起手来败坏Prolog的名声,人家可才是真真正正的直爽汉子呐!
至于Io和Haskell,我不得不承认,她俩散发着一股Lisp家特有的高贵,一双直白却深邃的眼睛望得我丢魂。她们也许是命运里的女神,却不能是生活中的爱人。
所以,抛开弯直不谈,我心中的她还是留给了Miss. Ruby。我曾找了好久去找一个词来形容Ruby的美妙,终于我找到了——善解人意。不管你把代码写成什么烂样,她都竭尽全力去理解你,包容你。是的,她有一些怪癖,可一旦你近距离的接触过,那些怪癖却变成了妖娆的魅力。
好了,潘多拉的魔盒已经开启,享受这份痛苦吧。
七段旅程,一场波澜
对“七段旅程,一场波澜”的回应
《七周七语言》热门书评
-
点子不错,缺乏洞见
30有用 1无用 逆铭睡眼惺忪地 2012-09-06
读完蛮失望的。作者在前言中说:“I will take you beyond syntax”,要“get into the head of a language designer”。他写道“I won’t settle for a superficial treatment.” 那么这本书成功与否,...
-
《七周七语言》电影整理
20有用 1无用 Dexter.Yy 2012-06-09
“与其说这是项目组,不如说是以机械化方式生产软件的工厂。那时的我,就好比某个酷爱电影的家伙,却居住于偏远小镇,镇上只有一家影院,放的还都是些所谓的‘大片’。直到我自立门户,开始自己生产软件时,我才真正领略到独立电影之妙。就像独立电影不断推动电影业发展那样,这些新兴的编程语言也在改变我们的组织以及编写...
-
语言比算法更重要
12有用 1无用 bear 2013-08-09
如果没有五线谱,作曲家只能用自然语言谱曲,那会是什么样子?翻一翻几何原本,看看欧几里德用自然语言写数学的公式和推导,那是多么蛋疼。五线谱和数学公式都是一种专门的语言。维特根斯坦说:凡是语言能表达的,都能说清楚,凡是语言不能表达的,都应该保持沉默。国内编程界长期被理聪主导,几乎每个程序员都听过这句话-...
-
为什么《七周七语言》选中的是这几种语言?
10有用 0无用 出版圈郭志敏 2012-04-09
从众多语言中,挑出本书包含的几门语言,这一过程也许不像你想得那么复杂。我们只不过发了些调查问卷,向本书的潜在读者请教了一番。调查数据汇总上来时,有八门语言入选希望最大。不过,我先是把JavaScript“踢”了出去,因为它实在是过于热门了,取而代之的是原型语言中热门程度仅次于JavaScript的I...
-
带您走进七周七语言的世界
10有用 1无用 出版圈郭志敏 2012-05-11
编者按在本文中,截选了七门各不相同的语言的概况,这七门语言,无论教还是学,对我们而言都是一个宏伟目标。书中的代码足以深刻阐释每一门语言的精髓。这七门语言都有非常优秀的支持社区,这也是我选择它们的原因之一。本书为你铺就的学习途径......第一周:Ruby有糖相伴好下药。——Mary Poppins松...
书名: 七周七语言
作者: [美] Bruce A·Tate
出版社: 人民邮电出版社
原作名: Seven Languages in Seven Weeks: A
副标题: 理解多种编程范型
译者: 巨成 | 戴玮 | 白明
出版年: 2012-5-8
页数: 246
定价: 59.00元
装帧: 平装
ISBN: 9787115276117