Amzi! inc--Tools for Learning Prolog ============================================================================== There are two products for learning Prolog, APT--The Active Prolog Tutor and _Adventure in Prolog_. Both cover the same material and have the same philosophic approach. APT is an interactive tutorial with an embedded Prolog interpreter. _Adventure in Prolog_ is a book. Both teach Prolog as a second language, that is, they assume the student has some familiarity with programming but none with Prolog or AI. The approach taken is more practical than theoretical, and through the course of the material and exercises the student will develop four prototype applications. Both tutorials teach standard, Edinburgh Prolog and are compatible with almost all available Prolog language systems. The main teaching application is an adventure game, chosen because it is an excellent showcase for many of the features of Prolog and also makes the learning process a bit more enjoyable. The student exercises lead to development of three other applications, being: - An intelligent genealogical database, - A business application (customer order entry), and - An identification expert system. The teaching philosophy is based on the idea that in order to be a successful Prolog programmer one must understand exactly the mechanics of unification and backtracking. For this reason, the execution behavior of Prolog is carefully explained at each step of the way through detailed traces and diagrams. One user said, "I was greatly struck by your book because it was only after examining your diagrams for cut/0 that I felt I had some understanding of its operation after all." Another commented, "...what I lacked was a visual paradigm; you, of course, provided that..." Because learning is often based on building on the familiar, both APT and Adventure in Prolog spend time showing how to implement conventional control structures in Prolog, so it starts not only with simple logical proofs but predicates to display reports of the results of the proofs as well. The chapters of both are: Getting Started Facts Simple Queries Compound Queries Rules Arithmetic Managing Data Recursion Data Structures Unification Lists Operators Cut (The dark side of the force) Control Structures Natural Language Appendix (Sample code for the four applications) APT--The Active Prolog Tutor ============================================================================== APT has a number of unique features that make it an excellent vehicle for learning Prolog. Built-In Interpreter -------------------- Within APT is a full Edinburgh-standard Prolog interpreter. (It is, however, not a general-purpose interpreter because it can only be accessed through APT.) The interpreter is driven by both the tutorial and the student. The tutorial dynamically drives it to demonstrate the development and use of Prolog code. The student toggles to the interpreter at any time to try out the code developed by the tutorial, to add additional code, to do the exercises, or to experiment in general. All of the student's work is saved from session to session. Multiple Traces --------------- APT contains three different Prolog trace mechanisms, all designed to illuminate the workings of Prolog. In contrast to normal Prolog traces, designed for debugging, the APT traces provide more detailed information about variable bindings and backtracking. Two of the traces use multiple windows on the screen at the same time to show various aspects of the running predicate in action. "The information in the tutorial is well organized and clearly presented. Users...will likely appreciate the concise nature of the text and the ability to toggle to the interpreter to try new techniques immediately. The heavy reliance on examples also makes concepts easily comprehensible. APT's approach to teaching Prolog is a good one."--Bonny Hinners, AI Expert System Requirements Computer Lab Use ---------------- APT is available in a computer lab configuration that allows multiple students to share a copy of APT on computer lab PCs. "We found APT to be an excellent vehicle for an intense 5-day course in Prolog for a diverse group of professionals."--Dr. Warren Briggs, Chairman Computer Information Systems at Suffolk University Adventure in Prolog ============================================================================== It is recommended that the student have access to a Prolog interpreter for working the exercises, although, as Larry O'Brien of Computer Language points out, Prolog is one of the few languages you can program with just pencil and paper. Any Edinburgh-standard interpreter will do, such as the Cogent Prolog Interpreter. By Dennis Merritt, published by Springer-Verlag. ISBN 0-387-97315-X, ISBN 3-540-97315-X.