本文转载自Amazing10微信公众号《业余码农》。转载本文请联系业余码农公众号。早在我出生之前,人类就已经掌握了编程技巧。只是当时他们要用最底层的汇编语言来写程序,那一连串对寄存器和内存地址的操作还是让我头皮发麻。好在人类是受不了的,尤其是需要兼容不同CPU的指令集的时候。最后,所有人都认为是我出世拯救他们的时候了。人类觉得汇编语言太低级,完全反人类思维,于是发明了一些所谓的高级语言。这些语言对他们来说理解和编写都非常方便,但是却不容易控制。所以我就像一个工具人,被用来帮助人类和那些冰冷的机器征服这些高级语言。其实我每天的工作很无聊,无非就是把一些字母数字字符转换成一堆0101的字符串。我也不明白这些字符串到底是怎么工作的,反正我只是按照人类给我定下的规则行事。一开始,自己做的东西还是比较容易的,但是慢慢的,我发现接触到的高级语言越来越复杂了。这些家伙全副武装,功能齐全,我对付他们已经筋疲力尽了。不仅如此,随着技术的发展,CPU老大哥架构越来越多,我要兼容越来越多的系统和架构。时间一长,我就受不了了。我想了想,我不能什么都自己做,得找几个帮手帮我做事。最后,凭借着我的个性,我找到了六个能帮我完成一些重复性工作的壮汉。我对待他们就像对待自己的儿子一样。老板叫Lexical,做事很稳重,分解思维出色,擅长把一串字符串分解成符号。所以我把他放在最前面,直接和高级语言对接。他身经百战,能很快看穿高级语言的构造规则,并将其分解成碎片。例如,对于Inta=0;语句,resica运算后,int,a,=,0,;对应的符号会生成。老板做事还是很有胆识的。他熟练地使用了一种叫做“正则表达式”的工具,然后借助于几个神奇的算法,他可以将高级语言的代码语句剥离和抽象出来,清晰地展现出句子的结构。第二个孩子叫做语法。他比较内向,有点强迫症。但是二胎是兄弟中最严重的。老二位于boss下游,直接使用boss处理后的codemarks。然后按照我事先定义好的“语法”来处理codetoken。老人话不多。他患有强迫症,会在树上标记每一个代号。树上的每个节点都反映了每个codetoken的逻辑,他会以赋值运算符作为根节点。老二的标志就是有这样一棵语法分析树,把老大传下来的片断整理得整整齐齐。六兄弟中,老三是最让我头疼的。老三叫Semantic,比较懒惰,有点邋遢。所以不敢让他做太多复杂的工作。我一般都是让他去查语法分析树,看看有没有不合规的数据,然后让他们强行改造,听起来有点像城管。老四是最低调的,以至于我连他的名字都想不起来了。老四绝对是六个孩子中阅历最深,身经百战的老将。他往往能够以最有效的方式完成工作,并且具有出色的演讲技巧。在老四面前,老二标记的句法分析树被随手写成一连串的表达式。这些表达式是根据代码操作完成的顺序,生成临时名称来存储操作的值。这样就把原来复杂的高级语言代码一个一个拆解成简单的运算表达式。这部分是一个非常核心的工作。老四是我可以信任的人,虽然我现在还不记得他的名字。小吴是个聪明人。他虽然年轻,却有自己的想法。他成天跟着四哥,跟他说说自己对那些表情的想法,时刻想着优化和简化。不过,我也怕他年纪轻轻就误入歧途,所以对他的工作做了一些限制,不让他随心所欲。小刘比小吴踏实多了。他虽然年纪不大,但做事踏实踏实,勤奋踏实。只是最近自己有点内向,导致其他兄弟有点受不了。老六的工作就是将老四的表达式转换成汇编语言。这个过程听起来很简单,就像翻译一样,但实际上是一项艰巨的工作。在这个过程中,他需要为每一个表达式分配寄存器,选择内存中的空间。事情太麻烦了,这也是他每天加班的原因。这个月的绩效奖金想了半天,还是决定给老六。虽然他的内向引起了兄弟们的不满,但确实提升了整个团队的效率。这六个兄弟各有各的性格特点,做事风格也大不相同。但他们也是我最信任的兄弟,跟随我四处征战,也在不断进步和成长。回首这些奋斗过的地方,一晃70多年过去了。现在,像C/C++、Objc、C#、Scala、Pascal、Delphi这些语言都进入了我的阵营。记得我征服的第一门高级语言是Fortran。非常怀念与人类领袖约翰·巴克斯并肩作战的日子。(JohnBackus,YYDS)只是随着社会的发展,我不那么纯洁了。最开始我是用汇编语言搭建的,但是看到高级语言的强大后,就逐渐被换成了基于高级语言的本体。现在同门的兄弟姐妹,大部分都是用高级语言构建的,比如C语言。高位语的血,留在了身上,却是用来对付高位语的。这是一件非常讽刺的事情,但也是可以理解的。毕竟这个社会就是这样,弱肉强食。但是随着年龄的增长,我逐渐发现自己并不是万能的。我一直知道还有一个人和我做的一样,但是风格很不一样,大家都叫他谢先生。此外,他还得到了一大批高级语言的认可。PHP、Perl、Python、Ruby等人拼命加入他的阵营。我也知道,在我的家里,也有一些小家伙在跟他做着不明不白的交易。只是我老了,现在无能为力了。但是听说高级语言营出现了一个天才。这个人物,我也是亲眼所见,不愧是绝世天才。最重要的是,他能够同时得到我和谢老师的双重认可,同时在我们阵营中赢得了一大批支持者。或许,编程世界的幼稚即将改变。大家好,我是安江。我毕业于华中科技大学,获得生物医学工程学士学位和硕士学位。学习期间玩过单片机,设计过FPGA,写过网站,架过服务器。
