From post@volker-wysk.de Fri Jan 18 17:14:59 2002
Received: from volker (mail@dsl-213-023-038-101.arcor-ip.net [213.23.38.101])
	by swi.psy.uva.nl (8.11.6/8.11.2) with ESMTP id g0IGEwT02518
	for <prolog@swi.psy.uva.nl>; Fri, 18 Jan 2002 17:14:58 +0100 (MET)
Received: from localhost ([127.0.0.1] ident=v)
	by volker with esmtp (Exim 3.22 #1 (Debian))
	id 16Rbf4-0001Kj-00
	for <prolog@swi.psy.uva.nl>; Fri, 18 Jan 2002 17:14:38 +0100
Date: Fri, 18 Jan 2002 17:14:38 +0100 (CET)
From: Volker Wysk <post@volker-wysk.de>
X-X-Sender:  <v@volker>
To: <prolog@swi.psy.uva.nl>
Subject: RE: [SWIPL] Announce: SwiProlog-C++ 0.1.0
In-Reply-To: <FB8942EA6DCDD511A43F00508BCF818D012D160D@lajgrdexm01.agouron.com>
Message-ID: <Pine.LNX.4.31.0201181712420.4552-100000@volker>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Wed, 16 Jan 2002, Schumann, David wrote:

> What advantages would you say this new interface has over Prof. Weilemaker's
> existing SWI-cpp set of classes?

SwiProlog-C++ is the result of a complaint about SWI-cpp by me (which
turned out to be wrong), which I've sent to the mailing list. A lot of
discussion followed between Jan and me on the mailing list, and (later) by
private mail. Jan has a thorough understanding of the (SWI-)Prolog
implementation(s), and I (imho) have a thorough understanding of the C++
language. So I decided to build a new interace. SwiProlog-C++ is meant to
replace SWI-cpp.

The two interfaces are very different. Some of the advantages:

- Much smoother integration in the C++ language

- Clarification of the semantics (in C++ terms) of the constructs which
  are imported from Prolog, and of memory management issues.

- The scope is all of the SWI-Prolog foreign language interface.

- Striving to be as easy as possible to use for C++ programmers which
  don't have any experience with Prolog implementations or a thorough
  understanding of how functional programs execute.

Explanations of what makes it so tricky to interface to Prolog can be
found in the SwiProlog-C++ manual.

V. W.

