The GNU Prolog web site

GNU的Prolog的网站
目前的稳定版本是gprolog - 1.4.0
内容的表

    
什么是GNU Prolog的?
    
特点
    
GNU Prolog的工作如何?
    
历史
    
支持的平台与去年变化
    
手册
    
下载
    
会费和有关的事态发展
    
邮件列表
    
报告bug

什么是GNU Prolog的

    
GNU Prolog是一个Prolog编译器解决了丹尼尔迪亚斯开发有限域约束的自由。

    
GNU Prolog的接受Prolog的约束方案和产生本地二进制文件(如gcc从C源)。得到的可执行文件,然后独立。此可执行文件的大小,可以非常小,因为GNU Prolog的可避免链接代码大多数未使用内置谓词。 GNU Prolog中的表现是非常令人鼓舞的(与商业系统)。

    
除了本机代码编译,GNU Prolog语言与调试器提供了一个经典的交互式解释器(顶层)。

    
序言部分,符合ISO标准为Prolog的许多扩展,在实践中非常有用的(全局变量,操作系统的接口,插座,...).

    
GNU Prolog中还包括一个有效的约束求解有限域(FD)。这将打开contraint逻辑编程的用户相结合的约束规划的权力逻辑编程declarativity。

特点

    
Prolog的系统:

        
符合为Prolog的ISO标准(浮点数,溪流,动态代码,...).
        
全局变量,明确子句语法(DCG),套接字接口,操作系统界面,...很多的扩展:
        
内置超过300 Prolog的谓词。
        
Prolog的调试器和一个低级别的WAM调试器。
        
行编辑下的交互式解释器完成对原子的设施。
        
Prolog和C之间的强大的双向接口

    
编译器:

        
本机代码编译器产生独立的可执行文件。
        
简单的命令行编译器接受的文件种类繁多:prolog文件,C文件,WAM文件,...
        
直接生成汇编代码比wamcc + GCC快15倍。
        
未使用的内置谓词最不挂钩(减少可执行文件的大小)。
        
编译谓词(机器码)平均wamcc快。
        
咨询谓词(字节码)wamcc更快5倍以上。

    
约束求解:

        
FD变量很好地融入了Prolog的环境(与Prolog的变量和整数完全兼容)。没有明确FD声明的需要。
        
非常有效的FD求解器(相当于商业求解)。
        
高层次的限制,可谓简单的原语。
        
很多预定义的约束:算术的限制,布尔约束,象征性的约束,物化的制约,... ...
        
几个预定义的枚举启发式。
        
用户可以定义自己的新的制约因素。
        
内置超过50 FD约束/谓词。

GNU Prolog的工作如何?

    
沃伦抽象机(WAM)是基于GNU Prolog编译器。它首先会编译一个Prolog程序一个WAM文件,然后转换为低级别的机器独立的语言,称为特别为GNU Prolog的设计的迷你汇编。生成的文件,然后翻译成目标机器(从一个对象获得)的汇编语言。这使得GNU Prolog中,以产生一种原生的立场独自从一个序言源可执行文件(类似什么从一个C程序,C编译器)。本汇编计划的主要优点是产生的本地代码要快。另一个有趣的特点是可执行文件小。事实上,大多数未使用内置的谓词的代码可以被排除在链接时的可执行文件。

    
GNU Prolog中还包括一个有效的约束求解有限域(FD)。GNU Prolog的求解器的主要特点是使用一个单一的(低级)的原始定义所有(高级别)FD约束。这种方法有许多优点:约束可以被编译,用户可以定义自己的约束他(原始),解算器是开放的,可扩展的(而不是像芯片暗箱求解),...此外
GNU Prolog的求解器是相当高效的,往往比商业求解。

历史

    
GNU Prolog是由同一作者开发了两个系统的启发:

        
wamcc:一个C编译器的Prolog。wamcc关键的一点是它能够产生独立可执行文件使用的是原始的编译计划:Prolog的翻译通过WAM到C。其缺点是由GCC编译产生的来源需要时间。GNU Prolog中可以产生独立的可执行文件,但使用更快的编译计划。

        
CLP(FD):比FD约束编程语言。其主要特点是使用一个单一的原始定义FD约束。GNU Prolog是基于同样的想法,但扩展了原始的力量,使有可能更为复杂的约束定义。在比较中电(FD),GNU Prolog中提供新的预定义的限制,新的预定义的启发式,物化的制约,... ...

    
于1996年1月开始的名称卡里普索下的GNU Prolog的发展。

支持的平台和最后更改

    
目前支持以下的架构:

        
ix86 / GNU / Linux的
        
ix86 / Win32的使用Cygwin(见文件src / WINDOWS)
        
ix86 / Win32的使用MinGW的(见文件src / WINDOWS)
        
ix86 / Win32的使用MSVC + +(见文件src / WINDOWS)
        
ix86 /上海合作组织
        
ix86 / Solaris的
        
ix86 / FreeBSD的
        
ix86 / OpenBSD上
        
ix86 / NetBSD的
        
ix86 /达尔文(Mac OS X的)
        
x86_64的/ GNU / Linux的
        
X86_64 / Solaris中
        
X86_64 / Win64上使用MinGW64(见文件src/WINDOWS64)
        
x86_64的/ Win64中使用MSVC + +(见文件src/WINDOWS64)
        
的PowerPC / GNU / Linux的
        
PowerPC /达尔文的(Mac OS X的)
        
的PowerPC / NetBSD的
        
SPARC / SunOS的(4.1.3或更高)
        
SPARC / Solaris的
        
SPARC / NetBSD的
        
α/ GNU / Linux的
        
阿尔法/ OSF1
        
MIPS / IRIX

    
如果您有兴趣移植到另一个架构的GNU Prolog的阅读在src移植文件。

    
你可以参考下列文件:

        
一般的README文件。
        
新闻文件。
        
ChangeLog文件。

手册

    
本手册是在以下几种格式:

        
一个网页上的HTML完全
        
HTML与每章的网页
        
完全压缩的HTML上的一个网页(tar文件)
        
每章的网页(tar文件的HTML压缩)
        
PDF格式
        
的PostScript
        
微软HTMLHELP版(CHM)
        
TeX的DVI(tar文件)

下载

    
我们提供的GNU Prolog的源代码和二进制分发版。

    
源代码分发:

        
的主要来源分布gprolog - 1.4.0.tar.gz。

    
二进制分发:

        
安装在/选择/地方/ /选择/ local / bin中的Mac OS X Leopard的英特尔安装程序包(使用圣保罗莫拉使用MacPorts创建:GNU Prolog的)。

        
Windows的英特尔32位自动安装设置(用MSVC编译ix86 / Windows 7的下+)。
        
Windows的英特尔32位自动安装设置(ix86 / Windows 7的下下MSYS与MinGW的GCC编译)。

        
Windows的英特尔64位自动安装设置(用MSVC编译x86_64的/ Windows 7的下+)。
        
Windows英特尔64位的自动安装设置(x86_64的/ Windows 7的MinGW64 GCC编译Cygwin下)。

    
其他版本:

        
在此目录中可以找到旧版本。
        
不稳定的版本都可以在这个目录中找到。

    
这些文件也可以从主GNU FTP站点下载或从任何一面镜子。

    
CVS存储库托管在SourceForge。

会费和有关的事态发展

    
欢迎踊跃投稿。如果你想你的贡献,请张贴邮件[email protected](更多的信息在此列表中,单击)。这里是一个可用的捐款名单:

        
Bedevere - SWIG的包装
        
CLIP - 一个电(间隔)解释
        
CLPGUI - 为中电的图形用户界面
        
CTI - 一个基于约束的左终止ISO - Prolog的推理工具
        
GNU Prolog语言/国泰 - 扩展的GNU Prolog的语境逻辑编程
        
gprolog - RH - 归因变数,coroutinings和电的延伸超过雷亚尔的gprolog
        
Logtalk - 面向对象扩展到Prolog的
        
肌肉的PS / SC - 肌肉的PC / SC库的接口
        
MYSQL / Prolog语言 - MySQL数据库的接口
        
ODBC / Prolog语言 - gprolog一个小的ODBC接口模块
        
XGP - Mac OS X的IDE连接gprolog和可可
        
CGI编程 - 与GNU Prolog的引进CGI编程

邮件列表

    
邮件列表[email protected]:与其他GNU Prolog的用户和/或实施者沟通:

        
通知其他用途,发送邮件到[email protected]
        
(联合国)订阅此列表发送邮件[email protected](UN)在主题行认购。
        
您还可以(联合国)通过在http://mail.gnu.org/mailman/listinfo/users-prolog网络订阅。
        
来自同一个站点,你也可以浏览存档。

    
邮件列表[email protected]:报告错误:

        
通知其他用途,发送邮件到[email protected]
        
(联合国)订阅此列表发送邮件[email protected](UN)在主题行认购。
        
您还可以(联合国)通过在http://mail.gnu.org/mailman/listinfo/bug-prolog网络订阅。

        
来自同一个站点,你也可以浏览存档。

报告错误

    
错误报告是对我们工作的的关键。如果我们不知道的问题,我们可以解决这些问题。另一方面,它是一种浪费时间读/检查/回答这是不是错误的错误!请参考手册(上线的版本可用)。如果你可以尝试检查,如果错误发生的最后一个不稳定的版本(所有不稳定的版本在这里)。如果您已经使用的最后一个不稳定的版本,尝试最后的稳定版本。当你确定你已经发现了一个错误,请报告[email protected](在这里获得更多关于该列表中,单击的信息)。

    
您的报告应包括所有这些事情:

        
机器的类型,您使用的是(Unix下使用uname - a的)。
        
GNU Prolog的版本(使用gprolog - 版本)。
        
`配置和配置的输出操作数,如果错误的关注编译/安装阶段。
        
所需的任何文件的完整文本重现错误。尝试获得一个最小的例子,显示错误。
        
我们需要精确的命令类型重现错误。
        
描述你观察到什么样的行为,您认为是不正确的的。
        
如果你想提在GNU Prolog的源的东西,显示的代码行几行的背景下。不要只给一个行号。



版权所有(C)1999至2011年丹尼尔迪亚斯

逐字复制和整篇文章的分布是允许的,在任何媒介提供保留此通知。

你可能感兴趣的:(Web,windows,Solaris,英特尔,编译器,postscript)