C、C++、Delphi……反汇编出来的代码,千差万别,但从逻辑的角度来讲,一个程序,无论用什么语言写,都只有一个逻辑模式。它才是那个最终的真相。
这就是我在学英语过程中,悟到的编程真理。一个英语单词,当翻译成汉语时,总是能整出一串意思。这可苦了背单词的兄弟们。初学英语时,我看到一句英文,里面有生词,就开始查它们的意思。将一个生词的若干意思记下,然后放在句子里逐一试验,最后根据句子的整体意思,确定选用单词的哪个释义。
想到英语单词如此之多,每个单词又有这么多不同的释义,我都快崩溃了。我觉得我学好英语的日子遥遥无期。我很绝望。
转机是:我忽然想到美国鬼子为什么没有被多如牛毛的单词释义搞得崩溃掉?还能头脑清楚地经常到世界各地找找别国的麻烦?
真相就是:一个单词,只有一个最基本的释义,其它释义都是在它的基础上衍生出来的。我们要做的就是记住这个基本的释义,然后根据不同的语境来将基本释义化为符合语境的准确释义。美国鬼子之所没被英语搞崩溃掉,就是因为他们只去记住那个最基本的释义,然后把它灵活运用。
其实,中文不也一样吗?举个“打”字的例子。打人,打车,打酱油,打电话……,这么多打,你一个一个记意思,你会疯了的。打就一个基本意思:有一定深度的接触。打人,要把拳头打进对方肉里(有“深度”吧?打得越狠,就越深。)打酱油,让瓶子跟酱油接触,并让酱油进入瓶子的深处。打车,你跟车接触,并进到车里。打电话,你跟电话接触,并让声音进到电话里……我不是汉语言学专家,对打的解释很牵强,我不打算就此跟任何人展开争论,我不过是借此举个例子。
编程呢?JAVA,C,C++,ASM,PASCAL……无论选用哪个去编程,同一个程序,只有一种逻辑模式。
4
所以,站在哲学的层次去审视:英语和编程,竟是如此的相似!
我很幸运,如果当时没有看那本《大众哲学》我可能永远无法将英语和编程联系起来,并领悟其中的真理。