一个个尖锐的问题,像一把把锋利的刀子,狠狠地扎在钱学敏和所有语言组专家的心上。
他们设计的那些,所谓的“优雅”、“简洁”的语法糖。
在编译器那冰冷、严苛的逻辑面前,全都变成了一个个,可笑的,致命的毒药!
“我们是在造‘通天塔’!不是在盖狗窝!”
黄建功将手中的粉笔,重重地摔在地上,粉笔断成了两截。
“通天塔的每一块砖,都必须是标准的!尺寸、角度,不能有丝毫的偏差!”
“而你们!给我们的,是什么?!”
“是一堆,奇形怪状,棱角不明的石头!”
“你们让我们,怎么用这些石头,去建造一座,能够通往神国的,伟大的巴别塔?!”
“用这些石头盖起来的,只会是一座,随时都会崩塌的,危楼!”
巴别塔……
这个词,让钱学敏的身体,剧烈地一颤。
他想起了那个古老的传说。
人类妄图建造通天高塔,最终,因为语言的混乱,而分崩离析,功败垂成。
而现在……
他们,正在重蹈覆辙!
他们创造的“华夏”语言,非但没有成为沟通的桥梁,反而,成了混乱的源头!
“老黄……我……我们……”
钱学敏的嘴唇,一片煞白。
他想道歉,想解释,说他们只是想让语言更友好,更方便。
可是在这铁一般的事实面前,任何的解释,都显得那么苍白无力。
他们,错了。
从一开始,就错了。
他们误解了老师“大道至简”的真正含义。
真正的“简”,不是形式上的,让人类写起来简单。
而是逻辑上的,让机器理解起来,没有歧义!
是规则的清晰!是秩序的井然!
而他们,却把“自由”,当成了“简单”。
最终,亲手,为这座通天塔,制造了第一道,也是最致命的一道裂痕。
“巴别塔”的裂痕,一旦出现,就再也无法弥合。
两个原本亲密无间的攻关小组,第一次,产生了巨大的隔阂。
“编译器”攻关组的专家们,怨声载道。
“这活儿没法干了!语言组那帮人,根本不知道我们在做什么!”
“他们设计的每一条‘方便’的语法,都是给我们增加一倍的工作量!”
“什么++,什么省略括号,这都是异端!是魔鬼的设计!”
“语法分析器,已经重写了三个版本了!每次都是因为他们新加的‘语法糖’,导致整个逻辑推倒重来!”
而“神谕语言”设计组那边,也充满了委屈和不满。
“我们是‘以人为本’!这有什么错?这可是老师亲自点化的!”
“是他们编译器组的人,太死板了!脑子转不过弯来!”
“不就是多几种情况吗?多写几个判断逻辑不就行了?哪有那么复杂!”
“我看他们就是能力不行,还怪我们设计得不好!”
争吵,在两个小组之间,不断爆发。
原本热火朝天的西山实验区,第一次,笼罩在一种互相指责,互相推诿的,压抑的氛围之中。
聂老总和黄建功、钱学敏,开了好几次协调会。
但问题的根源,在于思想上的巨大分歧,根本无法调和。
最终,在巨大的压力下,他们只能选择一个,最笨,也是最无奈的办法。
——打补丁。
“既然有歧义,那我们就,增加新的规则,来消除歧义!”
在一次争吵不休的联席会议上,钱学敏疲惫地提出了一个解决方案。
“比如,IF语句的ELSE悬挂问题。我们就强制规定,ELSE永远和最近的,那个没有配对的IF结合!”
“这……这不是又增加了新的,复杂的规则吗?”编译器组的人立刻反对。
“那你们说怎么办?!”钱学敏也来了火气,“难道要把整个设计,都推倒重来吗?!”
编译器组的人,沉默了。
推倒重来,意味着过去一个月的努力,全部白费。
这个代价,谁也承担不起。
“好,那就按钱老说的办!”黄建功最终拍了板,“先解决眼前的问题!”
于是,一场轰轰烈烈的,“打补丁”运动,开始了。
为了解决A = B + C++;的歧义,语言组规定,++放在变量后面(后缀),是