信息化的本质分享 http://blog.sciencenet.cn/u/Babituo

博文

最简单的“胚胎创编器”需要具备什么功能?

已有 2942 次阅读 2011-1-26 14:27 |个人分类:基因软件开放实验室|系统分类:科研笔记

最简单的胚胎创编器,就是能创编出“计算者1”的胚胎的编辑器。
首先需要明确怎么来表达“计算者1的基因”。
计算者1是只知道做加法运算的计算者类型,也就是计算者1的基因承载对象:计算者1胚胎。
计算者1的基因信息很简单:
告诉未来的世界:
我是一个“计算者1”的基因,
根据我创生的软件生命都会:做“求两个数的和”的加法运算。
 
就算是对这样极其简单的基因信息的表达和今后的应用,都隐藏着并不容易的设计问题。
这至少意味着:
1.基因是一种描述型的对象。
2.基因描述的是未来可用于创生软件生命对象的抽象结构和行为;
3.基因所描述的内容和规范必须在软件世界和胚胎创生器之间进行严格约定;
4.基因应该能用动态的(可变方式)来描述未来对象的抽象结构和行为;
 
于是引出问题:
1.如何描述抽象的可演进的对象结构?
2.如何描述抽象的可演进的对象行为?
这2个问题对于“计算者1”来说,似乎是不必要的,对于“计算者1”来说,我们至少要描述的是唯一的一个不需要演进的行为:做2个数的和运算。
我们假设,这是一个“行为原子”。
所谓“行为原子”,就是“最小规模”的行为单位。
这里“规模”指连续的运行时间和必备的记忆空间。
从面向对象的分析设计来说:我们只需要描述一个只具备1个方法的类:加法器类,就可以了,而且,我们不需要描述其方法的实现细节,因为这是一个“方法原子”,我们假设,软件世界会知道这个“方法原子”对应哪个固定的例程。
 
于是,我们可以给出计算者1胚胎编辑器的设计:
胚胎编辑器(只针对计算者1)
胚胎(基因)类
属性
   名称(需要称呼这个胚胎)
   类型(我们将来一定会有一个复杂庞大的分类体系来标识基因的类型)
   个体描述量词(我们得知道是用“只”,“个”还是“条”等什么词来计量)
   属性描述集合(可有多个属性可描述)
   方法描述集合 (可有多个方法可描述)
方法
   保存为文件
   从文件调出
   装载到编辑器
     
编辑器类
属性
   胚胎信息显示编辑界面
方法
   新增一个胚胎
   刷新显示胚胎的基因信息
   修改胚胎的基因信息
   打开一个胚胎文件
   保存胚胎文件 
 
编辑器的架子就有了,然后需要详细设计属性集合和方法集合如何描述,需要怎样的编辑界面。
初步的设计就完成了。


https://wap.sciencenet.cn/blog-33982-408036.html

上一篇:空间——物质、能量和信息统一的大视野
下一篇:多维世界看信息
收藏 IP: 59.38.30.*| 热度|

0

发表评论 评论 (1 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-19 11:34

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部