Programming languages 用于逻辑编程的比Prolog更新的编程语言

Programming languages 用于逻辑编程的比Prolog更新的编程语言,programming-languages,paradigms,logic-programming,Programming Languages,Paradigms,Logic Programming,有没有比Prolog更新的专门用于逻辑编程的语言?很好,很现代,很像Prolog Mercury是一种新的逻辑/函数式编程语言,它将声明式编程的清晰性和表达性与高级静态分析和错误检测功能相结合。其高度优化的执行算法提供的效率远远超过现有的逻辑编程系统,接近传统编程系统。Mercury解决了大规模程序开发的问题,允许模块化、单独编译和大量优化/时间权衡 有一种很有前途的函数逻辑编程语言叫做。尽管它很新,但如果你已经知道Haskell和Prolog,你应该很容易习惯咖喱,因为它直接受到这两种语言的影

有没有比Prolog更新的专门用于逻辑编程的语言?

很好,很现代,很像Prolog

Mercury是一种新的逻辑/函数式编程语言,它将声明式编程的清晰性和表达性与高级静态分析和错误检测功能相结合。其高度优化的执行算法提供的效率远远超过现有的逻辑编程系统,接近传统编程系统。Mercury解决了大规模程序开发的问题,允许模块化、单独编译和大量优化/时间权衡


有一种很有前途的函数逻辑编程语言叫做。尽管它很新,但如果你已经知道Haskell和Prolog,你应该很容易习惯咖喱,因为它直接受到这两种语言的影响

咖喱以无缝的方式结合在一起 函数式编程的特点 (嵌套表达式,高阶) 函数、惰性计算、逻辑 编程(逻辑变量, 部分数据结构,内置 搜索)和并发编程 (b)表达式的并行求值 在逻辑上进行同步 变量)

是一种多范式编程语言,支持逻辑编程作为其功能之一。我从来没有用过,所以我不能说它是否好。不过这看起来确实很有趣


免责声明:我从事Mercury项目,将在Oz/Mozart和Mercury之间选择Mercury。

不要忘记,Prolog是许多新扩展的宿主,这些扩展本身可以被视为语言。特别是约束语言,如CLP(R)、CLP(Q)、CLP(FD)。更通用的扩展,如CHR,但也有许多类型化方法


这些语言通常在现有的Prolog系统中作为库提供。您在该设置中得到的通常是比从头开始的系统所能提供的更成熟、更稳定的实现。毕竟,许多Prolog系统已经有30年的历史了。

是一种面向对象的逻辑编程语言,它扩展并利用了Prolog语言,具有适合大规模编程的功能集,侧重于代码封装和重用机制。它具有高度的可移植性,支持作为后端编译器最活跃地维护Prolog实现。其他值得注意的特性包括对原型和类、协议(接口)、共导入、基于组件的编程、事件驱动编程和高级多线程编程的支持。目前的发行版包括大量的编程示例、编程工具、库、文本编辑器和语法高亮器,支持编程和发布源代码。

我还建议Mercury作为一种伟大的逻辑编程语言。还请注意,虽然Mercury的语法可能看起来像Prolog,但由于强大的类型系统,它更像是在Haskell中编程。此外,如果您需要一些典型的Prolog功能,例如逻辑变量,Mercury不支持它们。实际上,避免它们将使您的程序更易于维护:-)。免责声明:我在Mercury项目中工作,对代码可维护性的观察是主观的和轶事性的。其他评论都是客观的,缺乏逻辑变量似乎是一个很大的缺点。这不是prolog/LP的一个非常重要的方面吗?Wikipedia有一个逻辑编程语言列表: