Subject: pkg/10479: new package for GNU prolog compiler
To: None <gnats-bugs@gnats.netbsd.org>
From: Brook Milligan <brook@biology.nmsu.edu>
List: netbsd-bugs
Date: 06/29/2000 14:40:14
>Number:         10479
>Category:       pkg
>Synopsis:       new package for GNU prolog compiler
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jun 29 14:41:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Brook Milligan
>Release:        NetBSD 1.4/i386
>Organization:
Brook G. Milligan                      Internet:  brook@nmsu.edu
Department of Biology
New Mexico State University            Telephone:  (505) 646-7980
Las Cruces, New Mexico  88003  U.S.A.  FAX:        (505) 646-5665
>Environment:
	
System: NetBSD biology.nmsu.edu 1.4 NetBSD 1.4 (BIOLOGY) #0: Tue Nov 23 11:51:18 MST 1999 root@biology.nmsu.edu:/usr/src/sys/arch/i386/compile/BIOLOGY i386


>Description:
	I have created a new package for the GNU prolog compiler.
Note that I have only tested it on a i386 machine.  It supports at
least the PPC and sparc architectures and could probably be made to
work without much difficulty (I think all the arch-specific stuff is
in the Ma2Asm directory).  I'm neither an expert on prolog nor do I
have any other hardware to test it on, so I'm leaving this as an
exercise for the reader. :)

Here is an extract from the README file:

                                GNU PROLOG
                                ==========

			      by Daniel Diaz
			   Daniel.Diaz@inria.fr


INTRODUCTION
************

GNU Prolog is a native Prolog compiler with constraint solving over finite
domains (FD) developed by Daniel Diaz. Last information about GNU Prolog can
be found at http://www.gnu.org/software/prolog.

A lot of work has been devoted to the ISO compatibility. GNU Prolog is very
close to the ISO standard (http://www.logic-programming.org/prolog_std.html).

Here are some features of GNU Prolog:

Prolog system:

   - conforms to the ISO standard for Prolog (integer/floating arithmetic,
     streams, dynamic code, exceptions).
   - clause indexing.
   - a lot of extensions: global variables, definite clause grammars (DCG),
     sockets interface, operating system interface,...
   - more than 300 Prolog built-in predicates.
   - Prolog debugger and a low-level WAM debugger.
   - line editing facility under the interactive interpreter with completion
     on atoms.
   - powerful bidirectional interface between Prolog and C.

Compiler:

   - native-code compiler producing stand alone executables.
   - simple command-line compiler accepting a wide variety of files:
     Prolog files, C files, WAM files,...
   - direct generation of assembly code 15 times faster than wamcc + gcc.
   - most of unused built-in predicates are not linked (to reduce the size
     of the executables).
   - compiled predicates (native-code) as fast as wamcc on average.
   - consulted predicates (byte-code) 5 times faster than wamcc.

Constraint solver:

   - FD variables well integrated into the Prolog environment (full
     compatibility with Prolog variables and
   - integers). No need for explicit FD declarations.
   - very efficient FD solver (comparable to commercial solvers).
   - high-level constraints can be described in terms of simple primitives.
   - a lot of predefined constraints: arithmetic constraints, boolean
     constraints, symbolic constraints, reified constraints,...
   - several predefined enumeration heuristics.
   - the user can define his own new constraints.
   - more than 50 FD built-in constraints/predicates.

>How-To-Repeat:
	N/A
>Fix:
	install package at ftp://biology.nmsu.edu/pub/packages/gprolog.tar.gz

>Release-Note:
>Audit-Trail:
>Unformatted: