Pyramid新思路——BrainUnit的再度增强

今天优化知识库的词语库的逻辑分类时突然有一个想法,来增强BrainUnit的功能以及提高编写程序的容易程度。根据不同词语的分类,例如它是一个实体[Entity],那么它就具有一些属性[Attributes]。那么可以提供类似的语法:

[VB.net]

Dim
 Apple as new Pyramid.KnowledgeBase.Words.Entity.Physical.Animate.Plant.Fruit("Apple")
Dim Answer as Pyramid.BrainUnit.Runtime.Answer

With Apple
 Answer.add(
"苹果具有以下属性:")
 Answer.add(.Color)
 Answer.add(.Taste)
 Answer.add(.Shape)
End with

Pyramid.Runtime.Reply(Answer)

C#  J#  JScript代码类似,这里就不一一写出。当然Pyramid.KnowledgeBase....Fruit实在太长了,迟点会提供一个类似于My的命名空间,把常用的rjq(即“扔进去”)。那么BrainUnit的编译器遇到这些代码的时候会产生一个代理类,然后与KB关联起来。

更详细的明天再考虑……
posted @ 2006-03-30 22:15 U2U 阅读(131) 评论(4) 编辑 收藏