home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!mcsun!uknet!edcastle!edcogsci!asch
- From: asch@cogsci.ed.ac.uk (Andreas Schoter)
- Newsgroups: comp.lang.prolog
- Subject: Re: Prolog-WIMP interfacing principles
- Message-ID: <10217@scott.ed.ac.uk>
- Date: 22 Jul 92 08:49:34 GMT
- References: <3545@keele.keele.ac.uk>
- Organization: Centre for Cognitive Science, Edinburgh, UK
- Lines: 25
-
- In article <3545@keele.keele.ac.uk> csa09@seq1.keele.ac.uk (Paul Singleton) writes:
- >Please can anyone with experience or insight suggest some principles
- >for interfacing Prolog programs to WIMP interfaces, i.e. buttons, sliders,
- >menus, dialog boxes and all that stuff. I avoid asserting and retracting
- >global state, and try to contain side-effects, and I can't see how to
- >employ WIMP features without compromising this style. Well, I can, but ...
-
- You don't specify what level of abstraction the WIMP features are
- specified at, low level wiget type facilities, or high level packaged
- utilityies, but...
-
- Last summer I did some work at Sussex with the Poplog Prolog system
- interfacing it to the Athena X system. There was already an interface
- for the Pop11 language so what I did was to hook the Prolog into the
- Pop11. The net result was a set of new "builtin" predictes in Prolog
- which behaved like write/1 etc. (Admitedly much of this took advantage
- of the Pop11 datastructures to store wiget info thus avoiding explicit
- asserts and retracts at the Prolog end).
-
- Yes, these are, strictly, side effect predicates, but I don't see
- anyway around that. If your Prolog has a good C interface the same
- technique should work, hook Prolog predictes into foreign language
- functions that perform the necessary graphics.
-
- Andreas
-