"Simple" Prolog Interpreter Project 
Author Message
 "Simple" Prolog Interpreter Project

As   an  undergraduate  project,  I'm  going  to  be  writing  a  simple
(relatively speaking, of course :) Prolog interpreter using C on a  UNIX
machine.  Does anyone have any good reference materials they could point
me to, or maybe something online to send to me?

I'm especially looking  for  a  grammar  to  use  for  syntax  checking,
examples  of  structure storing and goal resolution (pseudo code is more
than  welcome),  etc.   I've  looked  at  several  texts   on   parallel
implementations,  but  this  project is not going to be that complex, so
sequential algorithms would be better.  I'm also looking for good memory
usage  algorithms  rather  than  fast  ones (I'd like to port it to a PC
after it's done)... Anything at all will be VERY appreciated.

Since I don't read this newsgroup very often, send E-Mail if possible.

Thanks so much in advance!
--
  |\  |     //             Julius A. Cisek   jac423            |  /|

 O    | IB...M             I do think it's good...             |    O



Sun, 12 Jul 1992 01:12:01 GMT  
 "Simple" Prolog Interpreter Project

writes:

Quote:

> As  an undergraduate project, I'm going to be writing a simple
> (relatively speaking, of course :) Prolog interpreter using C on a UNIX
> machine. Does anyone have any good reference materials they could point
> me to, or maybe something online to send to me?

There really is a crying need for a Prolog interpreter, written in C,
that runs on Unix-based and PC machines and can be used for experimental
and educational purposes.  As an example of what I mean, take a look at
the xlisp interpreter written by David Betz.  Anyone can obtain a free
copy of xlisp; compile it for UNIX, MSDOS, the Mac, or the Artari; get a
tutorial such as ESSENTIAL LISP, by Anderson, Corbett, and Reiser,
ISBN 0-201-11148-9, 1987; and learn Lisp.  I would suggest that xprolog
could evolve out of SB-Prolog.  Anything useful would be a bit much for a
senior project, however.
--
John E Van Deusen III, PO Box 9283, Boise, ID  83707, (208) 343-1865

uunet!visdc!jiii



Mon, 13 Jul 1992 02:24:41 GMT  
 "Simple" Prolog Interpreter Project

writes:

Quote:
> There really is a crying need for a Prolog interpreter, written in C,
> that runs on Unix-based and PC machines and can be used for experimental
> and educational purposes.  

HP Prolog II is an industrial quality C-based Prolog that will appear on
our March price list, Bureaucracy-willing.  It's small, calls/callable
from other languages, fast, excellent interfaces to programming environments,
windowing systems, debugging, etc., built by ZYX AB of Sweden, and supported
by HP.  It will initially be offered on the HP 9000 Series 300 (68K) and 800
(HP-PA) systems, and we're working on a PC offerring.  Educational purposes
entitle universities to very substantial discounts.  I can fax feature info,
if you email me a fax phone number.

Quote:

> John E Van Deusen III, PO Box 9283, Boise, ID  83707, (208) 343-1865

Hope this helps,

Jimmy Benjamin
California Language Lab
Hewlett-Packard Co.
Cupertino, CA




Fri, 17 Jul 1992 04:39:53 GMT  
 "Simple" Prolog Interpreter Project

Quote:
> There really is a crying need for a Prolog interpreter, written in C,
> that runs on Unix-based and PC machines and can be used for experimental
> and educational purposes.
> John E Van Deusen III, PO Box 9283, Boise, ID  83707, (208) 343-1865
> uunet!visdc!jiii

There used to be just such a beast, but written in Pascal rather than C.
It was actually written, I believe, as a third-year project on a British
degree course (ie it took about 6 months).  You might consider trying to
get hold of that and translating it, or at least using it for inspiration.

The particular prolog was called York University prolog, which was, naturally
enough, where it was written.  I used to have a copy, but alas it is no more.
I recall that the list of available prologs, which has been posted on this
group a couple of times, gave an address where you could get hold of a copy.
I guess the only proviso is that it is pretty old now, and prolog compilation
technology has advanced a great deal - so it would be less than ideal for
an education in prolog implementation.

I regret that I can offer nothing more than a few pointers, but I hope that
this helps.

Ian.

!Ian{*filter*}inson,     HP Labs, Information Systems Centre,      Bristol, England!


!These opinions are all my own work.!   ?-  mind(X),  body(X),  spirit(X).    !



Fri, 17 Jul 1992 18:50:16 GMT  
 "Simple" Prolog Interpreter Project

Quote:


>> There really is a crying need for a Prolog interpreter, written in C,
>> that runs on Unix-based and PC machines and can be used for experimental
>> and educational purposes.
>> John E Van Deusen III, PO Box 9283, Boise, ID  83707, (208) 343-1865
>> uunet!visdc!jiii
>There used to be just such a beast, but written in pascal rather than C.
>It was actually written, I believe, as a third-year project on a British
>degree course (ie it took about 6 months).  You might consider trying to
>get hold of that and translating it, or at least using it for inspiration.

>The particular prolog was called York University prolog, which was, naturally
>enough, where it was written.  I used to have a copy, but alas it is no more.

There is (or was) a Prolog Interpreter (actually, it compiled to a sort
of intermediate code) developed by Mantis Cheng (sp? I'm not sure if that
name is correct) at the University of Waterloo.  It was called (surprise
surprise) Waterloo UNIX Prolog, and was written in C to run under BSD4.2.
I ported it to a System V environment as part of a course I was taking at
the time.  I have *no* idea what the release status of this Prolog is;
I can dig up the paper (a Master's Thesis) describing WUP, and post
a reference if there is any interest.  It wasn't particularly speedy,
but, as I recall, it had a number of interesting features (well, interesting
to *my* pitiful excuse for a brain, in any case ;-).
        If there is interest, I'll post some more info....
                Cheers!
                Rob Marchand

--
Rob Marchand                   UUCP  : uunet!attcan!lsuc!array!rob

200-5000 Dufferin Street       Phone : +1(416)736-0900   Fax: (416)736-4715
Downsview, Ont CANADA M3H 5T5  Telex : 063666 (CNCP EOS TOR) .TO 21:ARY001



Sat, 18 Jul 1992 05:34:39 GMT  
 
 [ 5 post ] 

 Relevant Pages 

1. string.join(["Tk 4.2p2", "Python 1.4", "Win32", "free"], "for")

2. "Contract VisualAge-Project Lead"

3. dBASE interpreter - FlagShip "fsi" replacement

4. "OpenGL interpreter in Forth"

5. The "cool interpreter"...

6. Book titled "Threaded Interpreters"

7. Projects for "5th and 6th graders"

8. S/W PD REXX "compilers/interpreters"

9. Need an "exceptional" public VHDL project

10. "Interpreter not initialized (version mismatch?)"

11. Announcing "Lolli", An Interpreter for Linear-Logic Programming

12. "Dumping" an interpreter's state

 

 
Powered by phpBB® Forum Software