自盘古开天劈地,人就活在这天地之间。日出而作, 月升而息。古往先贤, 我最喜欢的是公元前500年左右的老子。虽然相隔了差不多三千年, 但觉得许多见解和计算机语言有相通之处。
老子认为, 有个不可用语言描述的东西, 为了便于交流, 就命名它为道。道德经第二十五篇, 老子写到:
有物混成, 先天地生。寂兮寥兮, 独立而不改, 周行而不殆, 可以为天地母。吾不知其名, 强字之曰: 道, 强为之名曰:大。大曰逝, 逝曰远, 远曰反。故道大, 天大, 地大, 人亦大。域中有四大, 而人居其一焉。人法地, 地法天, 天法道, 道法自然。
这个无声无形的“道”。它独立不变, 循环无尽。可以说是天地的母亲。这宇宙中有四大: 道, 天, 地, 人。
道德经第一篇, 老子写到有无的奥妙之处:
道可道, 非恒道。名可名, 非恒名。无名天地之始, 有名万物之母。故常无, 欲以观其妙; 常有, 欲以观其徼。此两者同出而异名, 同谓之玄, 玄之又玄, 众妙之门。
这有, 无两个元素, 相互依存。有则无, 无则有。它们一起出现, 只是称号不同而已。正如红楼梦太虚幻境楹联: 假作真时真亦假, 无为有处有还无。计算机语言的Boolean类, 编程的有几个真正区分正负? 只要流程对了就行。
道德经第十一篇, 老子举了几个例子来说明有无的玄妙。
三十辐共一毂, 当其无, 有车之用。埏埴以为器, 当其无, 有器之用。凿户牖以为室, 当其无, 有室之用。故有之以为利, 无之以为用。
房子可居住是因为它中空, 就是因为无, 有才可以显效。计算机软件只有当有空余的内存时, 它才能运行。如果没有空的内存, 就要死机了。
道德经第四十二篇, 老子写到:
道生一, 一生二, 二生三, 三生万物。
计算机靠波的起伏来传送二进制的代码。把八个一组的0, 1编成能为人识别的代码。然后再演变成无数的计算机语言, 编出了成千上万的软件。
道德经第十二章, 老子写到:
五色令人目盲,五音令人耳聋,五味令人口爽,驰骋畋猎令人心发狂,难得之货令人行妨。是以圣人为腹不为目,故去彼取此。
颜色多了, 看花了眼。声音多了, 听不出旋律。味道多了, 都不知是什么味。与软件开发讲究的SOLID原则是异曲同工。第一的S是Single单一的意思, 软件包只需做好一件事, 越少越清晰。