home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / answers / prolog / resource-guide / part1 next >
Encoding:
Text File  |  1993-12-13  |  42.5 KB  |  878 lines

  1. Newsgroups: comp.lang.prolog,comp.object.logic,news.answers,comp.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!usc!math.ohio-state.edu!darwin.sura.net!europa.eng.gtefsd.com!fs7.ece.cmu.edu!honeydew.srv.cs.cmu.edu!crabapple.srv.cs.cmu.edu!mkant
  3. From: mkant+@cs.cmu.edu (Mark Kantrowitz)
  4. Subject: FAQ: Prolog Resource Guide 1/2 [Monthly posting]
  5. Message-ID: <prg_1.faq_755770012@cs.cmu.edu>
  6. Followup-To: poster
  7. Sender: news@cs.cmu.edu (Usenet News System)
  8. Supersedes: <prg_1.faq_753177900@cs.cmu.edu>
  9. Nntp-Posting-Host: a.gp.cs.cmu.edu
  10. Reply-To: mkant+prolog-guide@cs.cmu.edu
  11. Organization: School of Computer Science, Carnegie Mellon University
  12. Date: Mon, 13 Dec 1993 08:07:28 GMT
  13. Approved: news-answers-request@MIT.Edu
  14. Expires: Mon, 24 Jan 1994 08:06:52 GMT
  15. Lines: 860
  16. Xref: senator-bedfellow.mit.edu comp.lang.prolog:9176 comp.object.logic:109 news.answers:15724 comp.answers:2976
  17.  
  18. Archive-name: prolog/resource-guide/part1
  19. Last-Modified: Mon Nov 15 14:04:52 1993 by Mark Kantrowitz
  20. Version: 1.13
  21.  
  22. ;;; ****************************************************************
  23. ;;; Prolog Resource Guide ******************************************
  24. ;;; ****************************************************************
  25. ;;; prg_1.faq -- 42149 bytes
  26.  
  27. Contributions and corrections should be sent to Mark Kantrowitz
  28. at mkant+prolog-guide@cs.cmu.edu. 
  29.  
  30. This guide lists a variety of resources for the Prolog community,
  31. including books, magazines, ftp archives, and products. It is posted
  32. once a month to the newsgroups comp.lang.prolog and comp.object.logic.
  33.  
  34. The original version of this guide (Version 0.6, Dec 11, 1991) was
  35. compiled by Dag Wahlberg, Uppsala University, Sweden <dagwag@csd.uu.se>.
  36. Other people who helped with the compilation include Chris Moss
  37. <cdsm@doc.ic.ac.uk>, Mats Carlsson, SICS <matsc@sics.se>,
  38. Michael A. Covington <mcovingt@ai.uga.edu>, Jocelyn Paine
  39. <popx@vax.ox.ac.uk>, Per G. Bilse, PDC <pdev@pdc.dk>, David Cohen, BIM
  40. Systems Inc <dc@bim.com>, Mark Korsloot <mark@logic.et.tudelft.nl>, and
  41. David W. Talmage <talmage@luvthang.aquin.ori-cal.com>. 
  42.  
  43. Thanks also to Jamie Andrews <jamie@cs.sfu.ca>.
  44.  
  45. Suggestions and comments to:    mkant+prolog-guide@cs.cmu.edu
  46.  
  47. ----------------------------------------------------------------
  48. Table of Contents (Part 1):
  49.  
  50.   [1-0] Introduction
  51.   [1-1] Sources of information about Prolog
  52.   [1-2] FTP Archives and Other Resources
  53.   [1-3] Prolog-related Mailing Lists
  54.   [1-4] Books and Magazine Articles
  55.   [1-5] The Prolog 1000 Database
  56.   [1-6] X-Windows Interfaces
  57.   [1-7] Is there a straight-forward way of compiling Prolog to C?
  58.   [1-8] What is the Basic Andorra Model and AKL?
  59.  
  60. Prolog Implementations (Part 2):
  61.   [2-1] Public Domain or Free Prolog Implementations
  62.   [2-2] Commercial Prolog Implementations
  63.  
  64. Search for [#] to get to topic number # quickly. In newsreaders which
  65. support digests (such as rn), [CTRL]-G will page through the answers.
  66.  
  67.  
  68. Recent Changes:
  69. ;;; 1.9:
  70. ;;; 20-JUL-93 mk    Updated IC-Prolog II entry and the PARLOG entry.
  71. ;;; 10-AUG-93 mk    Inserted [1-7] about compiling Prolog to C.
  72. ;;;
  73. ;;; 1.10:
  74. ;;; 24-AUG-93 mk    Corrected subscription info to EJFLP.
  75. ;;; 25-AUG-93 mk    Added entry on theorem-provers mailing list to [1-3].
  76. ;;;
  77. ;;; 1.11:
  78. ;;; 13-SEP-93 mk    Added entry on SLG to part 2.
  79. ;;;
  80. ;;; 1.12:
  81. ;;;  6-OCT-93 mk    Added entry on JB Prolog 2.1
  82. ;;; 12-OCT-93 mk    Added mention of Goedel mailing list to Goedel entry.
  83. ;;; 28-OCT-93 mk    Added entry on CHIP V4 to [2-2] Constraint Systems.
  84. ;;;
  85. ;;; 1.13:
  86. ;;; 15-NOV-93 mk    Updated ILOG Solver entry in part 2.
  87. ;;; 15-NOV-93 mk    Updated LP Bibs entry.
  88. ;;; 15-NOV-93 mk    Corrected email in SQL compiler entry.
  89.  
  90. ----------------------------------------------------------------
  91. Subject: [1-0] Introduction
  92.  
  93. This guide lists Prolog resources: archives, newsgroups, books,
  94. magazines, compilers, interpreters and anything else you can think of
  95. which has to do with the proliferation of Prolog. Also included is a
  96. list of suppliers of products and a list of publishers. As Prolog has
  97. a strong historical tradition in Europe, we've tried to ensure that
  98. the information is relevant to all readers, including European and
  99. North American. 
  100.  
  101. This guide is posted regularly to comp.lang.prolog and comp.object.logic. 
  102. It may also be obtained by anonymous ftp from CMU:
  103.  
  104.    To obtain the file from CMU, connect by anonymous ftp to any CMU CS
  105.    machine (e.g., ftp.cs.cmu.edu [128.2.206.173]), using username
  106.    "anonymous" and password "name@host". The files prg_1.faq and prg_2.faq
  107.    are located in the directory
  108.        /afs/cs.cmu.edu/project/ai-repository/ai/pubs/faqs/prolog/
  109.    [Note: You must cd to this directory in one atomic operation, as
  110.    some of the superior directories on the path are protected from
  111.    access by anonymous ftp.] If your site runs the Andrew File System,
  112.    you can just cp the file directly without bothering with FTP.
  113.  
  114. The FAQ postings are also archived in the periodic posting archive on
  115. rtfm.mit.edu [18.70.0.209]. Look in the anonymous ftp directory
  116. /pub/usenet/news.answers/ in the subdirectory prolog/. If you do not
  117. have anonymous ftp access, you can access the archive by mail server
  118. as well.  Send an E-mail message to mail-server@rtfm.mit.edu
  119. with "help" and "index" in the body on separate lines for more
  120. information.
  121.  
  122. Disclaimer:
  123.  
  124.    We have taken great care in making the information in this document as
  125.    accurate as possible. However we are not responsible for any problems
  126.    which might occur from using information supplied in this guide.
  127.  
  128. ----------------------------------------------------------------
  129. Subject:  [1-1]  Sources of Information about Prolog
  130.  
  131. The newsgroups comp.lang.prolog, comp.object.logic, and (to a lesser
  132. extent) comp.ai are a source of information and discussion about Prolog. 
  133.  
  134. A "Frequently Asked Questions" posting is posted to comp.lang.prolog
  135. twice a month by Jamie Andrews <jamie@cs.sfu.ca>. The Prolog FAQ and this
  136. Prolog Resource Guide are intended to complement one another.
  137.  
  138. The draft ISO standard for Prolog is available by anonymous ftp from
  139. ai.uga.edu:/ai.prolog.standard [128.192.12.9]. An unofficial summary
  140. of the draft ISO Prolog standard is available from
  141. ai.uga.edu:/ai.prolog.standard/ as isoprolog.tex or isoprolog.ps.Z.
  142. Send mail to Michael Covington <mcovingt@ai.uga.edu> for more information.
  143.  
  144. ----------------------------------------------------------------
  145. Subject: [1-2]  FTP Archives and Other Resources
  146.  
  147. The following are achives that contain Prolog-related material, such as
  148. code, interpreters, articles, etc. Most of the archives are ftp sites.
  149. They are listed by domain.name and [IP Address]. To access them and
  150. download programs type at the prompt: 
  151.  
  152.     ftp <site name> (or IP address)
  153.     login: "anonymous",
  154.     password: your own return email address,
  155.     cd <directory>, ls to see files, 
  156.     set binary, 
  157.     get <filename> to transfer file to your system
  158.     stop with quit or exit
  159.  
  160. Deviations from this general scheme may occur but the above should
  161. work in most cases.
  162.  
  163.  
  164. Artificial Intelligence Programs:
  165.    ai.uga.edu [128.192.12.9]
  166.  
  167.    Contains public domain Prologs, such as Open Prolog and ESL PD Prolog,
  168.    all programs from the book by Covington, Nute, and Vellino, (see
  169.    the section on Books below), PrEd (a small text editor for Prolog)
  170.    and some technical reports with accompanying code. Maintained by
  171.    Michael Covington, the University of Georgia, mcovingt@ai.uga.edu. 
  172.  
  173. ALE:     
  174.    ALE (Attribute Logic Engine), a public domain system written in
  175.    Prolog, integrates phrase structure parsing and constraint logic
  176.    programming with typed feature structures as terms.  Types are
  177.    arranged in an inheritance hierarchy and specified for the features
  178.    and value types for which they are appropriate.  Grammars may also
  179.    interleave unification steps with logic program goal calls (as can be
  180.    done in DCGs), thus allowing parsing to be interleaved with other
  181.    system components.  While ALE was developed to handle HPSG grammars,
  182.    it can also execute PATR-II grammars, DCG grammars, Prolog, Prolog-II,
  183.    and LOGIN programs, etc. Grammars and programs are specified with a
  184.    version of Rounds-Kasper Attribute Value Logic with macros and
  185.    variables.  ALE supports lexical rules and empty categories for
  186.    grammars, using a bottom-up, breadth-first dynamic chart parser.    ALE
  187.    supports last call optimization, negation by failure and cuts in
  188.    definite clauses, which may be used independently or integrated into
  189.    grammars.     The system is available free for research purposes, from
  190.    Bob Carpenter <carp@lcl.cmu.edu>.
  191.  
  192. ALP-UK Library:
  193.    The best Prolog library currently is the one collected by the ALP-UK
  194.    group. It is available to members at 30 pounds sterling for a Sun
  195.    cartridge or 2 pounds/IBM DOS disk. (non-members maybe, how much?) It
  196.    contains MBs of Prolog systems (including SB Prolog), libraries
  197.    (including the Edinburgh library), benchmarks, grammars, theorem provers,
  198.    object and graphics systems etc. For more information, write to ALP-UK
  199.    Library, Sanjay Raina, Librarian, Dept. of Computer Science, University
  200.    of Bristol, University Walk, Bristol BS8 1TR, UK, call +44 0272 303030
  201.    x3304, or send email to raina@compsci.bristol.ac.uk.
  202.  
  203. CASLOG
  204.    CASLOG (Complexity Analysis System for LOGic) is an experimental
  205.    semi-automatic complexity analysis system for logic programs. It can
  206.    perform the worst-case analysis for complexity measures: argument size
  207.    complexity, number of solutions complexity, and time complexity.
  208.  
  209.    CASLOG extends the techniques developed for analyzing imperative and
  210.    functional languages to deal with nondeterminism and generation of
  211.    multiple solutions via backtracking in logic languages. The analyses
  212.    for different complexity measures are implemented in a unified
  213.    framework and share several common features. First, the predicates in
  214.    a program are processed in an order generated by a bottom-up
  215.    topological sorting over the call graph of the program. Second, the
  216.    complexity function for a predicate is derived from the complexity
  217.    function of its clauses by using the information about the mutual
  218.    exclusion relationships between its clauses. Third, the complexity
  219.    function for a clause is inferred based on the data dependency
  220.    relationships between its literals. Fourth, the complexity functions
  221.    for recursive clauses are in the form of difference equations and are
  222.    transformed into closed form functions using difference equation
  223.    solving techniques. This unified framework can simplify proofs of
  224.    correctness and the implementation of the algorithms.
  225.  
  226.    CASLOG is available by anonymous ftp from cs.arizona.edu:caslog/. This
  227.    is an alpha distribution, and includes CASLOG version 1.0, a
  228.    preliminary user manual, a paper on CASLOG, and a set of examples.
  229.    For more information, contact Nai-Wei Lin <naiwei@cs.arizona.edu>.
  230.  
  231. Constraint Programming Paper Archive:
  232.    Aarhus University, Denmark, has established an anonymous ftp archive
  233.    for papers on "Constraint Programming" at ftp.daimi.aau.dk:pub/CLP/.
  234.    For further information, contact Brian H. Mayoh <brian@daimi.aau.dk>.
  235.  
  236. Eden
  237.    Eden is a Poplog-based AI microworld developed by Simon Perkins,
  238.    Jocelyn Paine and Edmund Chattoe of the Oxford University Artificial
  239.    Intelligence Society. It is intended to serve as a testbed for
  240.    learning and planning programs. Programs written in Pop-11, Prolog,
  241.    Lisp, and ML control a "bug" that lives in a 2-dimensional world. Any
  242.    kind of algorithm may be used to control the bug, including genetic
  243.    algorithms, neural nets, and rule-based systems. Eden consists of a
  244.    grid of cells, each of which can contain objects such as keys, doors,
  245.    boulders and quicksand. Bug's objective is to find and eat a piece of
  246.    food which the simulator has placed somewhere within this grid. To do
  247.    this, Bug must negotiate its way towards the food while dealing
  248.    intelligently with obstacles. Eden's laws of physics allow Bug to take
  249.    one of several different actions when it encounters an object. The
  250.    simulator then works out the consequences of the chosen action on Bug
  251.    and on Eden, and displays these graphically in a Ved window. Bug's
  252.    perceptions are updated to reflect the new state of the world, and the
  253.    cycle repeats. Eden is available by anonymous ftp from the Imperial
  254.    College archive, src.doc.ic.ac.uk [146.169.2.1] in the directory
  255.    computing/programming/languages/prolog/pd-software (a shortcut is
  256.    packages/prolog-pd-software) as the file eden.tar.Z. Eden includes
  257.    PopBeast, a simple Prolog bug which can read and parse simple
  258.    commands, extract their meaning, plan how to satisfy these commands,
  259.    and then carry out the plans.
  260.  
  261.    The Oxford University AI Society is running an international AI
  262.    competition for Eden bugs. Send your source code to Jocelyn Paine
  263.    <popx@vax.oxford.ac.uk> or Edmund Chattoe <econec@vax.oxford.ac.uk> by
  264.    May 1, 1993, if you'd like to enter.
  265.  
  266. Logic Programming Bibliographies:
  267.    duck.dfki.uni-sb.de [134.96.188.92]
  268.  
  269.    The BiBTeX bibliographies are available in /pub/lp-proceedings.
  270.    The ftp server supports tar'ing on the fly, so if you type "get
  271.    bibtex.tar" you will get a tar'ed version of the "bibtex" directory.
  272.  
  273.    BibTeX entries for the proceedings of the following conferences
  274.    are included: SLP84-87,91, NACLP89-90, ILPS91, ICLP82,84,86-91,93,
  275.       JICLP92, LP88, RTA89,93, PLILP90-92, ALPUK91, ICOT92, ALP90,92,
  276.       CADE90,92, CTRS90,92, LICS86-91, UNIF89, EPIA89,91,93, TACS91,
  277.       TAPSOFT93, EAIA90
  278.    and the following journals: JLP85-93, JAR91,92, JSC91,92, IANDC82-92.
  279.  
  280.    The bibliography is mirrored by the Universidade Nova de Lisboa.
  281.    In addition, the bibliography can be searched using either WAIS or
  282.    GOPHER. To search the lp-proceedings using WAIS, use the
  283.       lp-proceedings.src 
  284.    wais source, available from the directory of servers. To search the
  285.    lp-proceedings using GOPHER, point the client to gopher.fct.unl.pt,
  286.    and follow the directories 
  287.       "Research/Bibliography/Logic Programming Proceedings".
  288.    Searching should be easier than retrieving the entire package every
  289.    time you want to locate a particular article.
  290.  
  291.    Send comments and bug reports to rscheidhauer@dfki.uni-sb.de.
  292.  
  293. Machine Learning Algorithms Implemented in Prolog:
  294.    In 1988 the Special Interest Group on Machine Learning of the German
  295.    Society for Computer Science (GI e.V.) decided to establish a library
  296.    of PROLOG implementations of Machine Learning algorithms. The library
  297.    includes - amongst others - PROLOG implementations of Winston's arch, 
  298.    Becker's AQ-PROLOG, Fisher's COBWEB, Brazdil's generation of 
  299.    discriminations from derivation trees, Quinlan's ID3, inverse 
  300.    resolution, and Mitchell's version spaces algorithm. The programs are 
  301.    currently available via anonymous ftp-server from the GMD:
  302.  
  303.     ftp.gmd.de:/gmd/mlt/ML-Program-Library [129.26.8.90]
  304.  
  305.    Send additional PROLOG implementations of Machine Learning
  306.    Algorithms, complaints about them and detected bugs or problems
  307.    to Thomas Hoppe, <hoppet@cs.tu-berlin.de>. Send suggestions and
  308.    complaints about the ftp library to Werner Emde, Gesellschaft
  309.    fuer Mathematik und Datenverarbeitung, Bonn, <emde@gmdzi.gmd.de>. 
  310.  
  311. Natural Language Processing in Prolog:
  312.  
  313.    The Prolog and DCG programs from Pereira and Shieber's book, "Prolog
  314.    and Natural Language Analysis", are available by anonymous ftp from
  315.    das.harvard.edu:pub/shieber/pnla/. See the file README for the
  316.    conditions under which the material is distributed. If you retrieve
  317.    the files, please send an email message to the authors letting them
  318.    know how you plan to use them. For further information, write to
  319.    Fernando Pereira <pereira@research.att.com> or Stuart Shieber
  320.    <shieber@das.harvard.edu>.
  321.  
  322. Object-Oriented Program in Prolog:
  323.  
  324.    OL(P), Object Layer for Prolog, is an object-oriented extension to
  325.    Prolog.  It provides an object-oriented structuring and reuse
  326.    mechanism for Prolog in a manner that preserves performance and
  327.    semantics. The object-oriented layer is compiled into Prolog without
  328.    introducing any side-effects.  OL(P) takes the view of objects as
  329.    collections of predicates (called methods).  To Prolog, OL(P) 1.1 adds
  330.    objects with methods, data encapsulation, instances, and multiple
  331.    inheritance. Object methods can access Prolog predicates and vice
  332.    versa. The OL(P) incremental compiler translates OL(P) programs to
  333.    Prolog programs that don't need runtime interpretation (e.g., no
  334.    search is needed for inheritance).  OL(P) 1.1 comes with prepared
  335.    installation for SICStus Prolog and QUINTUS Prolog (both on UNIX),
  336.    documentation, simple built-in project management, some libraries,
  337.    and example programs. The source is included, so you can port OL(P)
  338.    to different platforms, different Prolog systems, and different
  339.    logic programming languages. OL(P) is available by anonymous ftp
  340.    from parcftp.xerox.com:/ftp/pub/ol/ [13.1.64.94]. Written by Markus
  341.    P.J. Fromherz <fromherz@parc.xerox.com>. 
  342.  
  343. Pleuk Grammar Development System:
  344.  
  345.    Pleuk is intended to be a shell for grammar development, in that many
  346.    different grammatical formalisms can be embedded within it.
  347.    Grammatical formalisms that currently work with Pleuk include CFG (a
  348.    simple context-free grammar system), HPSG-PL (a system for developing
  349.    HPSG-style grammars, produced at Simon Fraser University, Canada, by
  350.    Fred Popowich, Sandi Kodric and Carl Vogel), Mike (a simple
  351.    graph-based unification system, enhanced with additional operations
  352.    for the treatment of free word order proposed by Mike Reape in various
  353.    publications), SLE (a graph-based formalism enhanced with arbitrary
  354.    relations in the manner of Johnson & Rosner and Doerre & Eisele.
  355.    Delayed evaluation is used to compute infinite relations.  This system
  356.    has been used for the development of several HPSG-style grammars) and
  357.    Term (a term-based unification grammar system, originally developed
  358.    for the support of Unification Categorial Grammar of Zeevat, Klein and
  359.    Calder). Sample grammars are provided for all of these formalisms.
  360.    Work continues apace on other formalisms, including Bob Carpenter's
  361.    Ale system for typed feature structures, and Veronica Dahl's Static
  362.    Discontinuity Grammars.
  363.  
  364.    Pleuk requires SICStus prolog version 2.1#6 or later, plus a variety
  365.    of ancillary programs available free of charge from many FTP servers.
  366.    Pleuk is available via anonymous FTP from the University of Georgia
  367.    Artificial Intelligence FTP library, hostname
  368.    ai.uga.edu:/ai.natural.language/ as the files pleuk.1.0.tar.Z,
  369.    pleuk.PSmanuals.tar.Z, and pleuk.README.  Pleuk will also be available
  370.    shortly from the Natural Language Software Registry, German Research
  371.    Institute for Artificial Intelligence (DKFI), Saarbruecken.  For more
  372.    information, send email to pleuk@cogsci.ed.ac.uk.
  373.  
  374. Prolog Repository:
  375.    Established by Jocelyn Paine of Experimental Psychology, Oxford
  376.    University in 1987. The current catalogue (January 1991) contains
  377.    30 entries. For catalogue, queries and contributions contact POPX at: 
  378.       popx%vax.ox.ac.uk@oxmail.ox.ac.uk (internet) or 
  379.       popx@uk.ac.ox.vax (janet) 
  380.  
  381.    FTP access is available through the Imperial College archive at
  382.       src.doc.ic.ac.uk  (146.169.2.1)
  383.    in the directory
  384.       computing/programming/languages/prolog/pd-software
  385.    with a short-cut link of:
  386.       packages/prolog-pd-software
  387.    To access it, cd to either of the above directories via
  388.    anonymous ftp. The file README gives a brief summary of the
  389.    contents of the directory and CATALOGUE gives a (long!)
  390.    description of each entry. Entries include the Logic Programming
  391.    Tutor from Paine's book, the DEC-10 public-domain library, the
  392.    Linger natural-language corrector, a simple object-oriented
  393.    add-on for Prolog, graph utilities, among other things.
  394.  
  395.    Files in the archive are also available on MS-DOS floppies for a
  396.    nominal fee to cover the cost of floppies, postage, and packing. 
  397.  
  398. Prolog to SQL Compiler:
  399.    The Prolog to SQL Compiler translates database access requests,
  400.    which consist of a projection term and a database goal, to the
  401.    appropriate SQL query. The compiler is written in standard Edinburgh
  402.    Prolog and has been ported to a number of Prologs. The code posted to
  403.    comp.lang.prolog works in ECRC's SEPIA Prolog, but should be easily
  404.    ported to other Prologs. A detailed tech report on the implementation
  405.    is available by email from draxler@cis.uni-muenchen.de (include
  406.    your full postal address). The compiler is copyright, but may be used
  407.    free of charge for non-commercial purposes and redistributed provided
  408.    the copyright notice is retained intact.
  409.  
  410. PSI:
  411.    PSI is a handy system for the management and retrieval of your
  412.    personal data, be it addresses, CD collections, or bibliographic
  413.    references. It is intended for the non-commercial user. It may not be
  414.    as full-fledged as some data-base systems, but has some features that
  415.    you won't find in most commercial systems. Also, you may find it
  416.    easier to set up and faster to use. PSI is useful for a broad range of
  417.    data. Indexing with descriptors makes searching for the data you need
  418.    fast, and the interface to other data-base formats (import and export)
  419.    is quite powerful. PSI was written in LPA MacProlog and is a "genuine
  420.    'double clickable' Mac application". PSI runs on all Macs with System
  421.    6 or 7 in 1MB of main memory. As LPA MacProlog isn't yet 32-bit clean,
  422.    PSI isn't either. Extensive documentation and some examples are
  423.    included. PSI is available by anonymous ftp from
  424.    sumex-aim.stanford.edu, directory info-mac/app, file psi-23.hqx. It
  425.    was also available on a recent Nautilus CD-ROM and will be on the
  426.    first Info-Mac CD-ROM.
  427.  
  428. SEL:
  429.  
  430.    SEL is a declarative set processing language. Its main features are
  431.    subset and equational program clauses, pattern matching over sets,
  432.    support for efficient iteration and point-wise/incremental computation
  433.    over sets, the ability to define transitive closures through circular
  434.    constraints, meta-programming and simple higher-order programming, and
  435.    a modest user-interface including tracing. The language seems
  436.    well-suited to a number of problems in graph theory, program analysis,
  437.    and discrete mathematics. The SEL compiler is written in Quintus
  438.    Prolog and the run-time system is written in C. It generates WAM-like
  439.    code, extended to deal with set-matching, memoization, and the novel
  440.    control structure of the language. SEL is available by anonymous FTP
  441.    from ftp.cs.buffalo.edu:users/bharat/SEL2/.  The FTP release comes with a
  442.    user manual, bibliography of papers (including .dvi files), several
  443.    sample programs, and source code. For further information, write to
  444.    Bharat Jayaraman <bharat@cs.buffalo.edu>.
  445.  
  446. ----------------------------------------------------------------
  447. Subject: [1-3]  Mailing Lists
  448.  
  449. Prolog and Logic Programming:
  450.    prolog@sushi.stanford.edu (general)
  451.    prolog-hackers@sushi.stanford.edu (nitty gritty)
  452.  
  453.    All requests to be added to or deleted from this list, problems,
  454.    questions, etc., should be sent to prolog-request@sushi.stanford.edu
  455.  
  456.    [The host sushi.stanford.edu no longer exists, as of 11/24/92.
  457.     Does anybody know the new location of the mailing lists?]
  458.  
  459. Lambda Prolog:
  460.    lprolog@cis.upenn.edu
  461.  
  462.    To subscribe, send mail to lprolog-request@cis.upenn.edu.
  463.  
  464. Electronic Journal of Functional and Logic Programming (EJFLP)
  465.  
  466.    EJFLP is a refereed journal that will be distributed for free via e-mail.
  467.    The aim of EJFLP is to create a new medium for research investigating the
  468.    integration of the functional, logic and constraint programming paradigms.
  469.  
  470.    For instructions on submitting a paper, send an empty mail message with 
  471.       Subject: Help
  472.    to: 
  473.       submissions@ls5.informatik.uni-dortmund.de. 
  474.    You will receive an acknowledgment of your submission within a few hours.
  475.  
  476.    To subscribe to the journal, send an empty mail message to the following
  477.    address:
  478.        subscriptions@ls5.informatik.uni-dortmund.de
  479.    You will receive an acknowledgment of your subscription within a few days. 
  480.  
  481.    If there are any problems with the mail-server, send mail to
  482.    ejflp.op@ls5.informatik.uni-dortmund.de. 
  483.  
  484.    The editorial board is: Rita Loogen (RWTH Aachen), Herbert Kuchen (RWTH
  485.    Aachen), Michael Hanus (MPI-Saarbruecken), Manuel MT Chakravarty (TU
  486.    Berlin), Martin Koehler (Imperial College London), Yike Guo (Imperial
  487.    College London), Mario Rodriguez-Artalejo (Univ. Madrid), Andy Krall
  488.    (TU Wien), Andy Mueck (LMU Muenchen), Tetsuo Ida (Univ. Tsukuba,
  489.    Japan), Hendrik C.R. Lock (IBM Heidelberg), Andreas Hallmann (Univ.
  490.    Dortmund), Peter Padawitz (Univ. Dortmund), Christoph Brzoska (Univ.
  491.    Karlsruhe).
  492.  
  493. PDC-L:
  494.    PDC-L@hearn.bitnet is a discussion list for PDC Prolog users.
  495.  
  496. Theorem Provers:
  497.    theorem-provers@ai.mit.edu
  498.  
  499.    This (unmoderated) list is intended for announcements of interest to
  500.    people interested in automated theorem proving.
  501.  
  502.    To subscribe, send your email address to theorem-provers-request@ai.mit.edu.
  503.  
  504. ----------------------------------------------------------------
  505. Subject: [1-4] Books and Magazine Articles
  506.  
  507. A BiBTeX bibliography of Logic Programming Conferences is available by
  508. anonymous ftp from duck.dfki.uni-sb.de. See [1-2] above.
  509.  
  510. A partially annotated bibliography of work on integrating
  511. object-oriented and logic programming is available by anonymous ftp
  512. from menaik.cs.ualberta.ca:pub/oolog/ in PostScript and BibTeX
  513. formats. Written by Vladimir Alexiev <vladimir@cs.ualberta.ca>.
  514.  
  515. The following books are regarded as popular and widely used. Also
  516. included are some books about WAM. This is not intended to be a complete
  517. Prolog bibliography.
  518.  
  519.    Ait-Kaci, Hassan, "Warren's Abstract Machine: A Tutorial Reconstruction",
  520.    MIT Press, Cambridge, MA. 1991.
  521.    ISBN: 0-262-51058-8 (paper), 0-262-01123-9 (cloth).
  522.  
  523.    Bratko, Ivan, "Programming in Prolog for Artificial Intelligence", 
  524.    2nd Edition, Addison-Wesley, 1990 
  525.  
  526.    Campbell, J.A. (ed):     "Implementations of Prolog", John Wiley, 1984
  527.  
  528.    Clocksin, W.F. and Mellish, C.S: "Programming in Prolog", 3rd Ed.
  529.    Springer Verlag, 1987, $29. (Basic Introduction).
  530.  
  531.    Conlon, Tom: "Programming in Parlog". Addison-Wesley, 1989, 
  532.    ISBN 0-201-17450-2.
  533.  
  534.    Covington, Michael A.; Nute, D.; and Vellino, A. "Prolog
  535.    Programming in Depth", Scott, Foresman & Co., 1987. ISBN 0-521-40984-5
  536.  
  537.    Deville, Yves: "Logic Programming, Systematic Program Development",
  538.    International Series in Logic Programming, Addison-Wesley, 1990, 338 pages.
  539.    ISBN 0-201-17576-2. 
  540.  
  541.    Gregory, Steve: "Parallel Logic Programming in Parlog: The Language
  542.    and Its Implementation", Addison-Wesley, 1987, ISBN 0-201-19241-1.
  543.  
  544.    Hogger, C.J.: "Introduction to Logic Programming", Academic Press 1984
  545.  
  546.    O'Keefe, Richard A.:     "The Craft of PROLOG", MIT Press, 1990, 
  547.    ISBN 0-262-15039-5.
  548.  
  549.    Kluzniak and Szpakowicz: "Prolog for Programmers", Academic Press 1985
  550.  
  551.    Kowalski, R.A.: "Logic for Problem Solving", New York 1979, Elsevier Publ.
  552.  
  553.    Le, Tu Van,  "Techniques of Prolog programming, with implementation
  554.    of logical negation and quantified goals", John Wiley, New York, 1993.
  555.    ISBN: 0-471-57175-X (American edition), 0-471-59970-O (International
  556.    edition).  LnProlog, a Prolog interpreter that supports negative
  557.    finding queries and quantified queries is available together with
  558.    the book. 
  559.  
  560.    LLoyd, John: "Foundations of Logic Programming", 2nd Edition,
  561.    Springer-Verlag, 1988. (Intro to logic programming theory.)
  562.  
  563.    David Maier and David S. Warren: "Computing with Logic: Logic
  564.    Programming with Prolog", Benjamin Cummings, Menlo Park, CA, 1989.
  565.  
  566.    Dennis Merritt: "Building Expert Systems in Prolog", Springer-Verlag 1989.
  567.    Explains how to build various expert system shells in Prolog, including
  568.    forward/backward chaining, FOOPS, rete-network, frames and more. Includes
  569.    complete source code listings. (Source code from the book is also
  570.    sold on disk by Amziod.)
  571.  
  572.    Dennis Merritt: "Adventure in Prolog", Springer-Verlag, 1990. 
  573.    Teaches Prolog by leading the reader through the construction of an
  574.    adventure game. The exercises lead the reader through three other
  575.    programs:  an intelligent database, an expert system and an order-entry
  576.    program.  While most texts teach Prolog with fragments of interesting code,
  577.    this book takes a more pragmatic (as opposed to theoretical approach) and
  578.    shows the reader how to assemble complete Prolog programs.
  579.  
  580.    Nilsson, Ulf and Maluszynski, Jan, "Logic, Programming and Prolog",
  581.    John Wiley & Sons, 1990, ISBN 0-471-92625-6.
  582.  
  583.    Peter Ross, "Advanced Prolog: Techniques and Examples",
  584.    Addison-Wesley, 1989, ISBN 0-201-17527-4.
  585.  
  586.    Sterling, Leon (ed): "The Practice of Prolog", MIT Press, 1990
  587.    ISBN 0-262-19301-9
  588.  
  589.    Sterling, Leon, Shapiro, Ehud: "The Art of Prolog: Advanced Programming
  590.    Techniques", MIT Press, 1986 ISBN 0-262-19250-0
  591.  
  592.    Tick, E.: "Parallel Logic Programming". MIT Press, 1991
  593.  
  594.    David H. D. Warren: "An Abstract Prolog Instruction Set", Technical Note
  595.    No 309, SRI International, Menlo Park, CA, 1983.
  596.  
  597.    David H. D. Warren, "Logic Programming and Compiler Writing," in
  598.    Software-Practice and Experience 10(2), 1980.
  599.  
  600.    Wolfram, D.A., "The Clausal Theory of Types", Cambridge Tracts in 
  601.    Theoretical Computer Science {\bf 21}, Cambridge University Press,
  602.    1993.
  603.  
  604.    Subrata Kumar DAS, "Deductive Databases and Logic Programming",
  605.    Addison-Wesley Publishing Company, July 1992, 448 pages. 
  606.    ISBN 0-201-56897-7. 
  607.  
  608. Magazine Articles:
  609.  
  610.    BYTE Magazine, August 1987. 5 introductory articles on Prolog.
  611.  
  612.    Uwe Schreiweis: Beredte Logik, Konzepte der 'KI-Sprache" Prolog,
  613.    (Eloquent Logic, Concepts of the AI language Prolog), iX Magazine,
  614.    October 1992, pages 84-90.
  615.  
  616.    Uwe Schreiweis: Basis der Fuenf, Die Sprache Prolog in der Public
  617.    Domain, (Base of the Five, Prolog in the Public Domain), iX Magazine,
  618.    October 1992, pages 92-94.
  619.  
  620.    Uwe Schreiweis: Fuenfte Generation, Kommerzielle Prolog-Systeme,
  621.    (Fifth Generation, Commercial Prolog Systems), iX Magazine, October
  622.    1992, pages 96-102.
  623.  
  624.    Klaus Bothe: Weniger Raum, Speicherplatzbezogener Prolog-Benchmark,
  625.    (Less Space, A Space Oriented Prolog Benchmark), iX Magazine, October
  626.    1992, pages 106-7.
  627.  
  628. Magazines Related to Prolog:
  629.  
  630.    Logic Programming Newsletter (4 issues/yr)
  631.    Included with membership in the Association for Logic Programming 
  632.    ($20 regular, $10 students). For membership information, write to
  633.    Cheryl Anderson (ALP), DoC-ICSTM, 180 Queens Gate, London SW7 2BZ,
  634.    UK, phone +44-71-589-5111 x5011, fax +44-71-589-1552, or send email
  635.    to alp@doc.ic.ac.uk. Contributions are welcome and should be sent
  636.    to Andrew Davidson <ad@cs.mu.oz.au>. 
  637.  
  638.    AI Communications (4 issues/yr)
  639.    "The European Journal on Artificial Intelligence"  ISSN 0921-7126,
  640.    European Coordinating Committee for Artificial Intelligence.
  641.  
  642.    AI Expert (issued monthly) ISSN 0888-3785, Miller Freeman Publishers
  643.    See a copy of the magazine for list of BBS's in NA. On CompuServe: GO
  644.    AIEXPERT. Regularly reviews Prolog interpreters and compilers.
  645.  
  646.    Expert Systems (issued Feb, May, Aug and Nov) ISSN 0266-4720,
  647.    Learned Information (Europe) Ltd. Subscription: GBP 85 or USD 110
  648.  
  649.    IEEE Expert (issued bimonthly) ISSN 0885-9000, IEEE Computer Society
  650.  
  651.    The Journal of Logic Programming (issued bimonthly), (North-Holland),
  652.    Elsevier Publishing Company, ISSN 0743-1066
  653.  
  654.    New Generation Computing, Springer-Verlag. (LOTS of Prolog in it.)
  655.  
  656. ----------------------------------------------------------------
  657. Subject: [1-5]  The Prolog 1000 Database
  658.  
  659. The Prolog 1000 is a database of real Prolog applications being
  660. assembled in conjunction with the Association for Logic Programming
  661. (ALP) and PVG. The aim is to demonstrate how Prolog is being used in
  662. the real world and it already contains over 500 programs with well
  663. over 2 million lines of code. The database is available for research
  664. use in SGML format from the Imperial College archive
  665.    src.doc.ic.ac.uk:packages/prolog-progs-db/prolog1000.v1.gz
  666. If you have or know about a program that might qualify for inclusion,
  667. send an email message to Al Roth (alroth@cix.compulink.co.uk) for an
  668. electronic entry form which only takes a few minutes to complete. Or
  669. write to Prolog 1000, PO Box 137, Blackpool, Lancashire, FY2 0XY,
  670. U.K., Fax: +44 253 53811 Telephone: +44 253 58081. (Floppy disks for
  671. PC or Mac in text form are also welcome, and paper entries may also be
  672. sent). Queries may also be addressed to: Chris Moss
  673. (cdsm@doc.ic.ac.uk), Leon Sterling (leon@alpha.ces.cwru.edu).
  674. ----------------------------------------------------------------
  675. Subject: [1-6] X-Windows Interfaces
  676.  
  677. PI:
  678.    PI is an interface between Prolog applications and the X Window System
  679.    that aims to be independent from the Prolog engine, provided that it
  680.    has a Quintus-style foreign function interface (such as SICStus, YAP).
  681.    It is mostly written in Prolog and is divided in two libraries: (1)
  682.    Edipo, a low-level interface to the Xlib functions, and (2) Ytoolkit,
  683.    a high-level user interface toolkit that allows you to create and
  684.    manage graphical objects, define new classes of objects, and handle
  685.    user interaction. PI is available by anonymous ftp from
  686.    ftp.ncc.up.pt:/pub/prolog/pi_1.2.tar.gz and includes documentation
  687.    and some demos. Also see ytoolkit.tar.Z. PI has been tested in
  688.    Quintus Prolog 3.1.1 and SICStus 2.1 #8. Send questions, comments,
  689.    and bug reports to Ze' Paulo Leal, Universidade de Porto, Portugal,
  690.    <zp@ncc.up.pt>. 
  691.  
  692. XWIP: 
  693.    export.lcs.mit.edu:/contrib/xwip.tar.Z 
  694.    ftp.uu.net:X/contrib/xwip.tar.Z
  695.  
  696.    XWIP is an X Windows interface for PROLOG.
  697.  
  698. XPCE:
  699.  
  700.    XPCE is an object-oriented X-window interface toolkit for symbolic
  701.    programming languages (Prolog and Lisp), offering a high level of
  702.    abstraction for communication with X11, Unix processes, Unix
  703.    networking facilities (sockets) and Unix files. XPCE's built-in
  704.    classes (about 150) are mostly written in C.  The XPCE/Prolog
  705.    interface allows the user to create and manipulate instances of these
  706.    classes.  The user can also create new XPCE classes from Prolog.
  707.    XPCE's window related classes provide various styles of menus,
  708.    primitive graphical objects, compound graphical objects and Emacs
  709.    oriented programmable text manipulation windows. The distribution
  710.    contains several demo programs, including a diagram drawing tool
  711.    (PceDraw), an animation demo, an Epoch-like editor, a graphical
  712.    interface to Unix ispell, and an online hyper-text manual for XPCE
  713.    itself.  A demo version of XPCE/SWI-Prolog for Linux may be obtained
  714.    by anonymous ftp from swi.psy.uva.nl:pub/xpce/linux/ [145.18.114.17].
  715.    The non-demo versions (for SWI-Prolog, SICStus Prolog, Lucid Common
  716.    Lisp and LispWorks) require filling out a license and paying a fee
  717.    (see the file pub/xpce/INFO).  To be added to the mailing list
  718.    xpce@swi.psy.uva.nl send mail to xpce-request@swi.psu.uva.nl. Send
  719.    bugs to xpce-bugs@swi.psy.uva.nl. [Mail to xpce-request bounced, 7/8/93.]
  720.  
  721. ----------------------------------------------------------------
  722. Subject: [1-7] Is there a straight-forward way of compiling Prolog to C?
  723.  
  724. Two methods of compiling Prolog to C have been reported in the
  725. literature:
  726.    -  WAM-based approaches
  727.    -  Continuation-based approaches
  728.  
  729. The WAM-based approach compiles Prolog programs into a sequence of C
  730. function or macro calls to WAM instructions. A brief description of
  731. this method and some results are given in the paper:
  732.  
  733.    Michael R. Levy and R. Nigel Horspool, "Translating Prolog to C: a
  734.    WAM-based Approach", in Proceedings of the Second Compulog Network
  735.    Area Meeting on Programming Languages, and the Workshop on Logic
  736.    Languages in Pisa, May 1993. (Available by anonymous ftp from 
  737.    csr.uvic.ca:/pub/mlevy/.)
  738.  
  739. A "quick-and-dirty" method is to implement the WAM functions as described
  740. in Ait-Kaci's tutorial, to label each call with a C case label, and then throw
  741. a giant switch(P) statement around the entire sequence of calls, where P
  742. is the WAM program counter.  On return from any instruction that modifies
  743. P, a "goto Start" must be inserted. (This method was posted by Rob
  744. Scott, <rbs@aisb.ed.ac.uk>, based on the JANUS papers by Saraswat.)
  745.  
  746. This strategy will work, but does not allow you to modularize your
  747. prolog program. Predicates in prolog seem to generate 8 to 15 WAM
  748. instructions per clause, so (assuming very roughly a clause per
  749. line)you might expect your 1,000 line program to expand to a switch
  750. statement containing up to 15,000 lines. Some C compilers can't handle
  751. such a big switch statement.
  752.  
  753. Levy and Horspool solve this problem by compiling each Prolog
  754. predicate to a seperate C function. A dispatch loop mechanism is used
  755. to call the C functions. C switch statements are used only inside the
  756. functions.  A predicate that calls another predicate sets P to contain
  757. the address of the C function that implements the called predicate,
  758. (and sets another register called W in their scheme) and then returns
  759. to the dispatcher instead of calling the predicate. This bypasses the
  760. C run-time stack.  This lets one exploit WAM optimizations (like LCO)
  761. and yet retain the ability to create many modules. Their system
  762. performs well when compared with byte-code compilers, but translated
  763. code runs slower than code produced by native code compilers.  On the
  764. other hand, it outputs portable ANSI C that can run on any machine
  765. with a C compiler.
  766.  
  767. Other approaches to translating to C use continuations. The idea here
  768. is to translate every Prolog predicate to a C function that has
  769. an additional argument, namely a continuation function. If the function
  770. fails, it simply returns, but if it succeeds, it executes the continuation.
  771. When the function regains control from the continuation, it can then try
  772. to generate a new solution. Here are two references
  773. that describe systems built using continuations:
  774.  
  775.    J. L. Weiner and S. Ramakrishnan, "A Piggy-Back Compiler for Prolog",
  776.    in Proceedings of SIGPLAN T88 Conference on Programming Language
  777.    Design and Implementation, Atlanta, Georgia, 1988, pages 288-296.
  778.  
  779.    J. L. Boyd and G. M. Karam, "Prolog in C", Carleton University,
  780.    Ottawa, 1988. 
  781.  
  782. Oliver Ridoux <Olivier.Ridoux@irisa.fr> reports that a
  783. continuation-based approach works well when used to compile
  784. LambdaProlog. His scheme translates every predicate into a function
  785. that uses and modifies the success and failure continuations, with
  786. recursion in the predicate becoming iteration in the continuation
  787. passing mechanism. Inside the function one uses whichever intermediate
  788. machine one fancies. Clauses within the function can be either the
  789. branches of a switch statement or simply labelled when using a C
  790. system that can store labels. This approach can still generate
  791. monstrous C programs that blow up the C compiler, but the C programs
  792. aren't as large as those generated by a one module to a function
  793. scheme. Approaches that replace recursion in a predicate with
  794. recursion in a function tend to overload the C stack and lead to
  795. sloppy memory management.  Two technical reports describing Ridoux's
  796. approach are available by anonymous ftp from ftp.irisa.fr in pm/*.ps.Z
  797. and mailv06/*.ps.Z.
  798.  
  799. Michael Covington <mcovingt@ai.uga.edu> points out that a very simple
  800. approach is to write a Prolog interpreter in C, then store the Prolog
  801. program in that program's data! This will, of course, execute slowly.
  802. One might imagine all sorts of other schemes. For example, a query
  803. could be treated as a stack of "suspensions" (with the left-most goal
  804. on top).  The top suspension is executed by selecting the appropriate
  805. clause (possibly using indexing), and then, if necessary, pushing new
  806. suspensions on the stack (the body of the clause whose head unified
  807. with the current suspension).
  808.  
  809. Another question to ask is this: Is there any reason why you should want to
  810. convert Prolog to C at all? George Saab of Quintus Corp. pointed out that,
  811. with Quintus Prolog, you can create a standard .o file from a Prolog file,
  812. which can then be linked with your other .o files to create an executable.
  813. What's more, your Prolog code can be called from C code and vice versa.
  814.  
  815. On ther hand, the advantage of distributing "Prolog objects" as C rather than
  816. .o files is portability.
  817.  
  818. M. Gaspari  and G. Attardi describe an approach to translating Prolog to C
  819. based on the provision of a common runtime architecture. This is
  820. described in 
  821.  
  822.    G. Attardi and M. Gaspari, "Multilanguage Interoperability", in
  823.    Proceedings of The 3rd International Symposium, PLILP 91, 
  824.    Springer Verlag, LNCS #528, 1991.
  825.  
  826. [Note: Thanks to Michael Levy, Department of Computer Science,
  827. University of Victoria, <mlevy@csr.uvic.ca>, for writing this section.]
  828.  
  829. ----------------------------------------------------------------
  830. Subject: [1-8] What is the Basic Andorra Model and AKL?
  831.  
  832. The Basic Andorra Model is a way to execute definite clause programs
  833. that allows dependent and-parallelism to be exploited transparently.
  834. It also supports nice programming techniques for search programs.  The
  835. idea is to first reduce all goals that match at most one clause.  When
  836. no such goal exists, any goal (e.g., the left-most) may be chosen.
  837. The BAM was proposed by David H. D. Warren, and his group at Bristol
  838. has developed an AND-OR parallel implementation called Andorra-I,
  839. which also supports full Prolog.  See, for example, 
  840.  
  841.    Seif Haridi and Per Brand, "Andorra Prolog, an integration of Prolog
  842.    and committed choice languages", in Proceedings of the FGCS 1988,
  843.    ICOT, Tokyo, 1988.
  844.  
  845.    Vitor Santos Costa, David H. D. Warren, and Rong Yang, "Two papers on
  846.    the Andorra-I engine and preprocessor", in Proceedings of the 8th
  847.    ICLP. MIT Press, 1991.
  848.  
  849.    Steve Gregory and Rong Yang, "Parallel Constraint Solving in
  850.    Andorra-I", in Proceedings of FGCS'92. ICOT, Tokyo, 1992.
  851.  
  852. AKL (Andorra Kernel Language) is a concurrent constraint programming
  853. language that supports both Prolog-style programming and committed
  854. choice programming.  Its control of don't-know nondeterminism is based
  855. on the Andorra model, which has been generalised to also deal with
  856. nondeterminism encapsulated in guards and aggregates (such as bagof)
  857. in a concurrent setting. See, for example,
  858.  
  859.    Sverker Janson and Seif Haridi, "Programming Paradigms of the Andorra
  860.    Kernel Language", in Proceedings of ILPS'91. MIT Press, 1991.
  861.  
  862.    Torkel Franzen, "Logical Aspects of the Andorra Kernel Language", SICS
  863.    Research Report R91:12, Swedish Institute of Computer Science, 1991.
  864.  
  865.    Torkel Franzen, Seif Haridi, and Sverker Janson, "An Overview of the
  866.    Andorra Kernel Language", In LNAI (LNCS) 596, Springer-Verlag, 1992.
  867.  
  868.    Sverker Janson, Johan Montelius, and Seif Haridi, "Ports for Objects
  869.    in Concurrent Logic Programs", in Research Directions in Concurrent
  870.    Object-Oriented Programming, MIT Press, 1993 (forthcoming).
  871.  
  872. The above papers on AKL are available by anonymous ftp from sics.se in
  873. /pub/ccp/papers. An (as yet non-released) prototype implementation of
  874. AKL is available for research purposes (contact sverker@sics.se).
  875.  
  876. ----------------------------------------------------------------
  877. ;;; *EOF*
  878.