【发布时间】:2012-05-27 08:02:49
【问题描述】:
我对此很好奇。我必须为我的课程学习 Prolog,但我看到的大多数应用程序都是使用 C++、C# 或 Java 编写的。 Prolog写的应用,对我来说是非常非常难得的应用。
那么,我想知道 Prolog 是如何使用和实现现实世界的应用程序的?
【问题讨论】:
-
好的,感谢您提供的信息。我去看看。
标签: prolog
我对此很好奇。我必须为我的课程学习 Prolog,但我看到的大多数应用程序都是使用 C++、C# 或 Java 编写的。 Prolog写的应用,对我来说是非常非常难得的应用。
那么,我想知道 Prolog 是如何使用和实现现实世界的应用程序的?
【问题讨论】:
标签: prolog
SWI-Prolog 网站由... SWI-prolog 提供服务,仅使用可用库的一小部分。
嗯,它不是商业应用,而是real world。
需要付出很多努力才能使运行时能够执行 24x7 服务(主要是垃圾收集)和所需的性能可扩展性(以及其他多线程)。
根据实际应用需求开发了几个库。
【讨论】:
我曾经问过我的主管一个类似的问题,当时他正在给我们做 Prological 讲座。
他告诉我,人们并没有真正使用 prolog 来实现整个庞大的系统。相反,人们用其他语言(更理智和琐碎)编写主要部分,并将其链接到“决策程序”或用 Prolog 编写的东西。
不确定其他 Prolog 实现,我们使用的是 BProlog,它提供 C/Java 接口。
【讨论】:
其中一个臭名昭著的例子是 Microsoft Windows NT OS 网络接口配置代码,它涉及内置的 Small Prolog 解释器。这是 David Hovel 为 Dobbs 博士撰写的故事的link。 (经常被引用的 Microsoft Research 链接似乎不见了。)
曾经,Prolog 被认为是一类被称为专家系统的软件系统的语言。这些是交互式知识管理系统,通常带有关系数据库后端。
在一般基于规则的编程中,解析和不同的自动推理系统在 Prolog 之外被广泛使用。
【讨论】:
根据 Tiobe 软件索引,Prolog 目前排名第 36:在 Haskell 和 FoxPro 之间:
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
它是做什么用的?
我第一次听说它是关于日本(现已解散)的“第五代”项目:
http://en.wikipedia.org/wiki/Fifth_generation_computer
坦率地说,我真的不知道有人将 Prolog 用于任何严肃的商业开发。
【讨论】: