首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有用于Go的规则引擎/推理引擎

是否有用于Go的规则引擎/推理引擎
EN

Stack Overflow用户
提问于 2013-03-28 03:53:18
回答 4查看 10K关注 0票数 5

我们希望使用Go实现我们的业务逻辑,但我们找不到任何用于Go的规则引擎/推理引擎的良好实现。有没有人有经验或建议?

EN

回答 4

Stack Overflow用户

发布于 2014-05-09 05:08:05

有一个项目的目标是在Go中实现ISO Prolog编译器:

  • GoLog.

我还没有测试过它,但考虑到它实现了一些基本的Prolog,这应该是一个相当强大的基于规则的推理引擎,AFAIS。

否则,在godoc.org上搜索“规则”也会得到一堆包:

  • godoc.org/?q=rule
票数 3
EN

Stack Overflow用户

发布于 2013-04-15 21:48:41

据我所知,最好的例子就是“表驱动”的单元测试方法,它在很多标准库中都采用了。例如,fmttests

除此之外,Go是一种强大的、富有表现力的语言。你到底需要什么?在Go中有许多状态机实现的示例,还有一些具有声明性JSON配置的web框架。

如果你指的是适当的逻辑编程,那么目前还没有流行的Go库。

票数 1
EN

Stack Overflow用户

发布于 2019-08-13 17:12:56

如果你熟悉JBoss Drools,现在在Golang中也有类似的东西。请查看此https://github.com/newm4n/grool

它具有类似于Drools DRL的DSL,称为GRL。

代码语言:javascript
复制
rule SlowDown "When testcar is slowing down we keep decreasing the speed." salience 10  {
    when
        TestCar.SpeedUp == false && TestCar.Speed > 0
    then
        TestCar.Speed = TestCar.Speed - TestCar.SpeedIncrement;
        DistanceRecord.TotalDistance = DistanceRecord.TotalDistance + TestCar.Speed;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15668174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档