Subject: pkg/10479: new package for GNU prolog compiler
To: None <>
From: Brook Milligan <>
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
>Originator:     Brook Milligan
>Release:        NetBSD 1.4/i386
Brook G. Milligan                      Internet:
Department of Biology
New Mexico State University            Telephone:  (505) 646-7980
Las Cruces, New Mexico  88003  U.S.A.  FAX:        (505) 646-5665
System: NetBSD 1.4 NetBSD 1.4 (BIOLOGY) #0: Tue Nov 23 11:51:18 MST 1999 i386

	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


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

A lot of work has been devoted to the ISO compatibility. GNU Prolog is very
close to the ISO standard (

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.


   - 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.

	install package at