From tarau@cs.sfu.ca Mon Jan 24 14:46:26 EST 1994 Article: 9405 of comp.lang.prolog Xref: glinda.oz.cs.cmu.edu comp.lang.prolog:9405 Newsgroups: comp.lang.prolog Path: honeydew.srv.cs.cmu.edu!fs7.ece.cmu.edu!europa.eng.gtefsd.com!howland.reston.ans.net!news.moneng.mei.com!nic.hookup.net!swrinde!sgiblab!uhog.mit.edu!uw-beaver!nntp.cs.ubc.ca!fornax!tarau From: tarau@cs.sfu.ca (Paul Tarau) Subject: BinProlog 2.20 with Tcl/Tk interface and EDCGs Message-ID: <1994Jan20.233624.23925@cs.sfu.ca> Organization: CSS, Simon Fraser University, Burnaby, B.C., Canada Distribution: comp.lang.prolog, comp.lang.tcl Date: Thu, 20 Jan 1994 23:36:24 GMT Lines: 72 A BinProlog server for the Tcl/Tk visual programming environment is available from clement.info.umoncton.ca together with the new BinProlog 2.20 release in the file pub/BinProlog/BinProlog.2.20.tar.gz The interface uses tcl7.3 with tk3.6 combined with addinput-3.6a. It consists of a _very_ few pages of Prolog and Tcl code. Thanks to the strong metaprogramming capabilities of both languages the interface boldly `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 master Tcl application through a bidirectional pipe and it is able to generate and react to Tcl/Tk events. 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. 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). 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. This is a beta version of the BinProlog TCL/Tk interface which has been tested for Sparcs with SunOs 4.x or Solaris 2.x SGIs with IRIX 4.0.5. However it may work also on other systems for which BinProlog 2.20 executables are included. If found useful, it will be properly ported to some of the other platforms on which BinProlog is already running, i.e: - DEC Alpha - (64 bit version) - DEC Mips - - IBM R6000; - 68k - NeXT, SUN3; - 386-486-Pentium (MsDOS+Windows 3.1 - with DOS-extender go32 ver. 1.10 by D.J. Delorie). 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 binprolog@info.umoncton.ca. The Tcl/Tk files can be obtained from: Tcl - 7.3 ftp.cs.berkeley.edu:/ucb/tcl/tcl7.3.tar.Z Tk - 3.6 ftp.cs.berkeley.edu:/ucb/tcl/tk3.6.tar.Z addinput-3.6a harbor.ecn.purdue.edu:~ftp/pub/tcl/extensions --------------------------------------------------------------------- Paul Tarau tarau@cs.sfu.ca P.S. BinProlog 2.20 which supports the TCL/TK package (in directory TCL) also comes with an alternative run-time system (in directory EDCG) which integrates Peter Van Roy's Extended DCGs as a standard feature. I found them a very practical shorthand for a lot of typical Prolog programming patterns.