【原创】从玄学和编程角度看两种知识体系的构成
昨天晚上跟易友“易锅周”聊天我阐述了关于知识体系构成的观点:“存在两种知识体系: 一种知识体系是原理和规则从一开始就很复杂,而且不断地通过新的版本增加功能; 另外一种是基本的规则很简单,但是它的复杂性是通过基本的简单规则无限地推演和衍生出来的”。
我是个程序员,同时也是一个命理爱好者。所以我从两方面来谈谈会比较有意思。 编程语言中有两个比较极端的语言, 一个是 C++, 一个是 Lisp, 这两门语言堪称是“复杂”的两个极端。 C++ 的语言描述规范很长,是门非常复杂的语言,我下载过它最新的语言规范描述文档, 将近300页。 众所周知,C++ 是游戏开发的标准语言, 如果你的游戏追求性能多半都需要用它来开发。但是大部分程序员只使用了它 20% 的功能就可以实现 80% 的需求, 这很符合“二八原则”。另外一个神奇的语言是 Lisp, 它最初是为了研究人工智能开发出来的两种语言之一(另外一个是 prolog), Lisp 语言的原则是“简单即美”,数据和代码是统一的, 它的语言描述规范大概也就几页吧,有的LISP方言可能更少,比如Scheme。简单的规则可以演化出非常复杂的东西。有人甚至认为, 常规编程界不过是在重新实现多年前LISP程序员们已经实现过的技术. 从实现技术上来说, 据说现代的LISP编译器编译的本地代码一点都不输给C编译器。这两门语言反应了我们描述世界的两种知识体系。
无独有偶, 在玄学世界里也存在这两种知识体系。以紫微斗数为例, 紫微斗数有两个派别, 一个是“三合派”紫微斗数,它以星性为主,拥有上百颗星星,学习它你需要记住每颗星星的特点,还要记住双星组合在一起的特点, 还要记住某个星星在十二宫不同宫中所展现出来的特点, 听着就复杂吧。而且这种复杂性通过后人的归纳法还在不断地完善和打补丁,有些规则不验证了,需要修改;有些规则虽然还灵验但是不具体,需要修正;还有一些是新的社会结构归纳出来的新规则,于是“三合派”紫微斗数的体系就越来越复杂。 就象复杂的编程语言 C++,它不断在新版本中添加新的更强大的功能。 另外一派叫做“四化派”紫微斗数, 它不讲太多的星星, 除了杀破狼等十四颗主星,还有参与四化的左辅,右弼,文昌,文曲,还有六煞,禄存,天魁,天钺等几个星星外就没了,总共不超过三十颗星星,剩下就是一些四化规则,基于这些有限的星星和四化规则,四化派可以从十二宫任何宫位发出变化从而演化出非常复杂的系统。如果说一个人记忆力很好,那么它还是可以完全掌握三合派的精髓, 因为这种复杂性是数量累积出来的, 本身并不需要太多思考, 某宫出现某星直接对应某种情况,看起来很简单,只要记忆力够强,那么就能学好。 四化派看似规则简单,星星不多, 但是它的变化无穷的,也几乎是很多人无法承受的。 你们听说过“Miller法则”吗? 它是说: 一个人能力的极限也只能把注意力集中在7+-2个信息块。这就像人弹跳的极限,人忍受肌饿的极限一样,是不可改变的客观因素。它很大程度上限制人的思维能力。这个法则被成为:Miller法则。 更简单点表达就是:“一个人的注意力的极限是集中注意力在7+-2个事物上”。 三合派四化飞星通常只有本命四化,大限四化和流年四化, 但是四化派可以从十二宫任何一个宫位飞四化,而且可以连续飞。这种“满盘飞星”对很多人会产生极度的不适应。 任何一个学习四化派紫微斗数的人都会经历这个阶段, 脑子完全懵圈了,这个阶段持续时间可能很长, 很多人可能在一周后就放弃了, 我坚持了三个月算是熬过去了, 后来渐渐适应。 四化派这种“简单规则演化复杂性”的知识体系其实远比三合派累积记忆要麻烦的多。 但是很多人因为它星星少就被迷惑了,很快入门,但是立刻发觉自己无法应付这种复杂性而退出。
我觉得印度占星属于“简单规则演化出复杂性”和“累积知识点产生复杂性”的结合体,印度占星的内容虽然多,但是在分析过程中使用的规则很简单,每个盘用到的都是相位,宫主星,星座,行星,宫位这些东西, 即便它可以分出那么多“分盘”,12 分,20 分,40 分到120 分,每个分盘的分析原则没有变,但是产生的变化是无穷无尽的,这就是“简单规则演化出复杂性”。而印度占星的 yoga 体系又是“累积规则产生复杂性”的典范,这种累积的规则据说已经到了上千种。 所以说印度占星是很难学的。
其实这两种知识体系的构建都很复杂, 前者将复杂性提前,后者的复杂性隐藏在简单规则里。一种的复杂性在于累积功能的增加是无穷的,一种的复杂性在于同时演化出的可能性是无穷的。 你会选择哪个?