有一天,上帝来到你面前(1/2)
有一天,上帝来到你面前:“我最近搓了一个新的星球,准备在上面养几个小动物。但是我这几天有点忙,设计这点小事就就交给你了—是做好了,以后你就是这个星球的,嗯,球长。”压抑着第一次设计生命的激动,你挽起袖子,说干就干°知道要包含基因,基因用来生产蛋白质,所以你列出了动物们所需要的所有蛋白质,把它们的信息一一记录在中‖时,你还聪明的想到了用特殊的编码来标注基因片段之间的边界—了让动物能够进化,你还给予了在复制过程中变异的能力。“我真是太机智了”,你在封面上写下《蓝图1.0》,把设计图交给了上帝∠帝看了半天,抽出一张图纸,说:”这个刺猬如果生活在一个没有天敌的环境中,刺就没有用了∫消它的刺可以退化掉°需要哪些基因变异才能做到?“你信心十足地指着图说:“没问题,只要制造刺的角质蛋白的基因坏掉就可以了≮这里。”上帝皱着眉头说:“这样啊,它的爪子也没有了”°说:“......“∠帝抽出另一张图纸,说:“这条鱼以后会进化成陆生动物,它的鳍可以变成脚吗?”你说:“......““这头鹿在干旱的时候需要吃高处的树叶,什么样的基因变异可以让它的脖子变长?还有这只鸟,它的细长嘴是用来捉虫子的吧?在虫子不多的地方,能不能变得粗短一些,可以敲坚果?“正在你苦苦思索短脖子和长脖子有什么蛋白质上的差异的时候,上帝又说:”这种白马,我觉得身上长一些黑色的条纹比较好看,最好每匹马的条纹都不一样。””可是这到底有什么用?“在崩腊,你嘟囔了一句。”用处嘛,也许,哦,对了,它的天敌眼力不太好,可能是色盲』大群这样的马跑起来可以晃花它的眼睛。”上帝把图纸扔给你,扬长而去∫好你有一个程序员朋友°请他吃饭,并把你的难题告诉他以后,他哈哈大笑:“果然是隔行如隔山。不是我打击你,你犯了一个很低级的错误♀个系统已经够复杂了,还要考虑系统升级和用户需求变化,你怎么用了一个单层的逻辑结构?”你眼睛一亮,给他斟了一杯酒,“愿闻其详。”“首先你要有一个底层函数库,用来做直接和硬件交互的工作】一个函数都有自己特定的功能,逻辑要尽量简单≮这一层上面,你可以实现一些复杂的控制算法,由于有了底层函数库,你在设计控制算法的时候就不需要考虑硬件细节了$果算法很复杂的话,你可以考虑把它再分成多个层次¤要注意的是,第一,每一层都有自己明确的功能,第二,每一层都只能调用自己下面那一层,第三,每一层要定义好自己对上层的服务接口′实这也不是什么高科技,计算机的操作系统和网络协议都是这么设计的°看,这个是/的七层网络协议。“”七层?好像多了点。“你吓了一跳。“是多了点♀只是一个参考耐℃正的网络没有这么多层的№外,一个系统不能是硬编码的°必须提供一个参数配置的接口,让同一个系统可以在不同配置下完成不同的工作。”回去后你苦思良久,最后决定把设计改成三层结构。底层是直接控制蛋白质合成的基因。第二层是开关逻辑,可以打开或关闭底层基因。此外,开关还可以控制底层活动的强度。第三层实现全局控制,通过操作开关来掌握整个身体的外形和内部功能°把新的设计交给了上帝:“您看,这是《蓝图2.0》♀次我用了这个三层结构,您老上次提出的需求都可以满足了。”“噢,说说看。”上帝说。“我们先来看这个刺猬。刺和爪子的生长由不同的开关控制,他们都调用底层的角质蛋白生成基因$果刺的开关在变异中坏掉,就能得到一个光溜溜的刺猬,但是爪子不受影响。“图片来自“鱼鳍要变成脚就稍微复杂一点°鳍已经有不少骨头了,每一块骨头都有自己的开关。顶层逻辑控制每一个开关什么时候打开,强度设定为多少,什么时候关闭$果在顶层逻辑中发生少量的基因变异,鱼鳍的形状就会改变,持续的变异和环境的选择最后就会把鳍变成适合陆地爬行的脚♀种顶层逻辑的变异潜力很大,从鱼鳍一直演化的智能生命的手也所需要的变异也不多。”图片来自fievlveditfeet图片来自“至于长颈鹿的脖子和鸟嘴的形状就简单多了』需要控制逻辑中几个碱基对的变异,就可以改变胚胎发育过程中脖子或鸟嘴开关开放的时间和强度,从而改变形状。”图片来自ari'fie达尔文对加拉帕格斯雀的素描“最后是斑马的条纹♀个问题可以用环境参数来解决。顶层逻辑可以接收环境的输入,动态的打开和关闭色素蛋白合成基因】个胚胎发育的环境肯定有不同的,这样每一匹斑马的条纹也就独一无二了。”图片来自.上帝点点头说:“嗯,不错。不过你这些动物能进化成智慧生命吗?这个星球以后归你管°应该不想对着一群呆头呆脑的动物呼风唤雨吧?”“没问题,”你拿出了一张猿猴的图纸,信心十足的说,“这种猿猴就很有进化成智慧生命的潜力。当然了,从猿到人需要很多变化,比如灵活强壮的大拇指,支持直立行走的骨骼和肌肉,然而最重要的还是一个大容量的脑♀个猿猴的脑容量还太小,某些基因变异(控制颅骨生长的顶层控制)可以增大颅腔,但是这样势必会和它巨大的咀嚼肌发生冲突。必须缩小它的咀嚼肌才行♀也不
本章未完,请翻下一页继续阅读.........