From ok@atlas.otago.ac.nz Tue Aug 28 02:18:04 2001
Received: from atlas.otago.ac.nz (atlas.otago.ac.nz [139.80.32.250])
	by swi.psy.uva.nl (8.11.2/8.11.2) with ESMTP id f7S0I2b18849
	for <prolog@swi.psy.uva.nl>; Tue, 28 Aug 2001 02:18:03 +0200 (MET DST)
Received: (from ok@localhost)
	by atlas.otago.ac.nz (8.9.3/8.9.3) id MAA161699;
	Tue, 28 Aug 2001 12:17:55 +1200 (NZST)
Date: Tue, 28 Aug 2001 12:17:55 +1200 (NZST)
From: "Richard A. O'Keefe" <ok@atlas.otago.ac.nz>
Message-Id: <200108280017.MAA161699@atlas.otago.ac.nz>
To: goldkobi@barak-online.net, prolog@swi.psy.uva.nl
Subject: Re:  [SWIPL] prolog syntax

"Kobi" <goldkobi@barak-online.net> wrote:
	I was reading your manual and I wondered if you
	have or know where can I download from the syntax
	of the functions that are already in prolog.
	...

(a) When you download SWI Prolog you get the full source code.
    last/2 is in boot/list.pl

  (2) 	I want to see how do you write each function in prolog.
	...

(b) The best thing to do would be to get a good book about Prolog.
    Clocksin & Mellish is pretty good to start with; Sterling & Shapiro 
    is excellent to continue with.

Writing Prolog list-processing predicates is pretty obvious if you know
how to write list-processing functions in Lisp, so "The Simple Schemer"
might be a good start too.

