NEW BinProlog Tcl/Tk interface ------------------------------ The interface has been redesigned as a client/server program. It has been tested with Tcl/Tk 8.0.5 for Windows. It consists of a _very_ few pages of Prolog and Tcl code. Thanks to the strong metaprogramming capabilities of both languages the interface `compiles' their objects to evaluable representations on the other side. It is portable between present (and future :-) ) Tcl/Tk implementations and requires no C-programming. The BinProlog server is connected to it's client Tcl application. A Tcl server is also provided in case to support peer-to-peer interaction. For Tcl/Tk programmers it adds a high-performance logic programming engine which can be seamlessly integrated in their applications. BinProlog (a fast C-emulated compiler) executes list processing and other symbolic operations at more than an order of magnitude faster than Tcl scripts (see nrev.tcl vs. nrev.pl). For Prolog programmers it gives access to megabytes of free Tcl/Tk programs and program generators for graphic user interfaces, network communication, distributed programming facilities, high-level X programming, regular expression search, etc. A few demo programs (as a Prolog-driven N-Queens with interactive Tcl/Tk visualisation) give an idea of what can be done with the composit environment. For help on the Tcl/Tk installation and programming please take a look at the FAQs on comp.lang.tcl. Comments and BinProlog questions should be addressed to binnetcorp@binnetcorp.com, http://www.binnetcorp.com ------------------------------------------------------------------------- The intended use of this toolkit is in client (Tcl/Tk) server (BinProlog or Jinni) mode. The main parts are server.pro and client.tcl Start BinProlog with something like bp queens Start wish (the Tcl/Tk shell) with something like: wish queens.tcl or cygwish80.exe queens.tcl (on a Windows platform with Cygnus gcc) to see the first demo. p -sends a goal to Prolog for quiet evaluation q -sends a query to Prolog and gets back answers Look at the sources of the queens.* files for more hints. After having been activated by one of the previous (p or q) Tcl commands a Prolog goal may `call back' to continue the dialog with Tcl/Tk using if the client also activate a server component with: tcl_server which listens by default on port 8001 and calls Tcl/Tk eval eval function on them. The BinNet Team