jas@mulga.oz (John Shepherd) (05/11/87)
[ John wanted this on both the AI digest and comp.newprod. Since the
AI digest is moderated on the ARPA side, there is no good way of
cross-posting, so (depending on whether the AI moderator finds it
suitable) it may be seen twice. Sorry. RWH ]
Version 1.1 of the NU-Prolog system is now available for release to
academic institutions (schools, colleges, universities).
NU-Prolog is a second generation Prolog system which incorporates a
number of important advances in Logic Programming implementation.
NU-Prolog was implemented as part of the Machine Intelligence Project+
in the Department of Computer Science at the University of Melbourne.
It is the successor to Lee Naish's successful MU-Prolog system and
attempts to move Prolog closer to the ideals of Logic Programming by
allowing the user to program in a style closer to first order logic.
In addition, it provides substantial performance gains over interpreted
systems such as MU-Prolog.
NU-Prolog has the following features:
* compiles Prolog programs into machine code for an enhanced version
of the Warren abstract machine (implementing the delay/coroutine
style of programming of MU-Prolog)
* incorporates a database system based on superimposed codeword
indexing which can store general Prolog terms in external databases
for fast retrieval by NU-Prolog programs; the database system
makes use of the superjoin algorithm to perform efficient join
operations
* uses "when" declarations (the successor to MU-Prolog's "wait") to
control the execution of NU-Prolog programs according to the
availability of data
* implements a large set of built-in predicates, including many Quintus
Prolog predicates; most DEC-10/Edinburgh/MU-Prolog library predicates
are available through compatibility libraries
The NU-Prolog system contains the following major components:
* "nc", the NU-Prolog compiler
* "np", a simple interpreter-style interface which implements the
standard Edinburgh Prolog style debugging facilities and has a
sophisticated query language for accessing external database
predicates
* "nac", a program for adding control information to NU-Prolog programs
written in a purely logical style
* "nit", a program for reporting common errors in NU-Prolog programs
(cf. Unix/C's "lint")
NU-Prolog runs under Unix System V and Berkeley BSD Unix 4.?. It has
been implemented on the following machines: Elxsi 6400, Vax 11/780,
Perkin Elmer 3240, Sun workstations, Pyramid 98x, Integrated Solutions
Workstations. The system comes complete with a manual and all source
code. The preferred distribution medium is 1/2" tape, Unix tar-format
at 1600bpi. There is a A$400.00 fee to cover distribution costs.
In order to obtain a copy of the system, you must first complete a
licence agreement with the University of Melbourne. Licences can be
obtained by contacting:
NU-Prolog Distribution
Department of Computer Science
University of Melbourne
Parkville, Victoria, 3052
AUSTRALIA
or
CSNET: mip%munnari.oz@australia
ARPA: mip%munnari.oz@seismo.css.gov
UUCP: ...!munnari!mip (maybe, mip@munnari.uucp)
ACSnet: mip@munnari.oz
The system will be demonstrated at the Fourth International Conference
on Logic Progrmaming in Melbourne later in May.
+ The Machine Intelligence Project has been
assisted in the development of NU-Prolog by:
the Commonwealth Department of Science,
the Australian Research Grants Scheme,
the University of Melbourne and
Pyramid Technology, Aust.