锁定老帖子 主题:规则引擎
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2004-09-29
最好的rule engine就是prolog了!!
谁把turbo prolog的语法改人性点,用javacc写个编译器就万事ok了! |
|
返回顶楼 | |
发表时间:2004-09-29
alin_ass 写道 最好的rule engine就是prolog了!!
谁把turbo prolog的语法改人性点,用javacc写个编译器就万事ok了! 用了Haskell,以后觉得prolog那种风格实在不能忍受,哦当然就是那个Cut。 |
|
返回顶楼 | |
发表时间:2004-09-29
是这里吧
先去看看http://www.haskell.org/ |
|
返回顶楼 | |
发表时间:2004-09-29
我怎么看见了一个类似python的大家伙
请问在haskell里怎么实现下面的prolog语句?(实在是想象不出谓词演算还有比prolog更简洁的语法了) DOMAINS name = symbol PREDICATES like(name, name);. friend(name, name);. GOAL friend(john,Y);,write(Y," is john's friend.");. CLAUSES like(bell,sports);. like(mary,music);. like(mary,sports);. like(jane,smith);. friend(john,X);:-like(X,sports);,like(X,music);. |
|
返回顶楼 | |
发表时间:2004-09-29
alin_ass 写道 最好的rule engine就是prolog了!!
谁把turbo prolog的语法改人性点,用javacc写个编译器就万事ok了! prolog是基于Markov算法的。Markov算法可以作为规则引擎的基本准则,但是如果系统中存在着大量的规则,那么效率就非常低了。解决这个问题目前最好的算法就是Rete,后来是Rete2,这不是你玩玩javacc就玩得出来的。 |
|
返回顶楼 | |
发表时间:2004-09-29
想讨论修改prolog的语法能不能满足大家的需要,如果简单明了就可以考虑编译器,再考虑优化算法
|
|
返回顶楼 | |
发表时间:2004-09-29
potian 写道 alin_ass 写道 最好的rule engine就是prolog了!!
谁把turbo prolog的语法改人性点,用javacc写个编译器就万事ok了! prolog是基于Markov算法的。Markov算法可以作为规则引擎的基本准则,但是如果系统中存在着大量的规则,那么效率就非常低了。解决这个问题目前最好的算法就是Rete,后来是Rete2,这不是你玩玩javacc就玩得出来的。 Rete的Java RULE ENgine蛮多的(ILOG JRule,JESS),基于Rete2的有啥具体产品伐? |
|
返回顶楼 | |
发表时间:2004-09-29
alin_ass 写道 想讨论修改prolog的语法能不能满足大家的需要,如果简单明了就可以考虑编译器,再考虑优化算法
简单看了一下一些对rule engine的介绍。 似乎基于prolog的engine是有的。不过rete是所谓forward-chaining,并且好像速度较快。 但是,最关心的还是更高层次的语义问题。到底为什么需要prolog这种logic language? 为什么haskell这种functional的不行呢? 谁能举出一个实际点的需要rule的例子来呢? |
|
返回顶楼 | |
发表时间:2004-09-29
ajoo 写道 alin_ass 写道 想讨论修改prolog的语法能不能满足大家的需要,如果简单明了就可以考虑编译器,再考虑优化算法
简单看了一下一些对rule engine的介绍。 似乎基于prolog的engine是有的。不过rete是所谓forward-chaining,并且好像速度较快。 但是,最关心的还是更高层次的语义问题。到底为什么需要prolog这种logic language? 为什么haskell这种functional的不行呢? 谁能举出一个实际点的需要rule的例子来呢? Prolog 是delcaretive的,所有的程序都有推理机做掉。Haskell的坏处是没有推理引擎,但是优点是能够用各种Combinator将各种小规则组合成一个大规则。 |
|
返回顶楼 | |
发表时间:2004-09-29
它们都是declarative的。
我在想,需要推理的东西比不需要推理的东西复杂得多。 所以prolog相对于haskell又显得象把牛刀了。 那么什么业务规则需要这种逻辑推理能力呢? 我在做我的valiation配置的时候可以看到对combinator的需要,但是至今没有看到对推理的需要。 强烈呼唤用过规则引擎的给个具体实例! |
|
返回顶楼 | |