TEACH TEACHFILES Updated A.Sloman May 1987 TEACH FILES - these provide tutorial introductions with more verbose explanations than those found in HELP files. They are suitable for beginners. There are also some introductions to Artificial Intelligence concepts and techniques, including parsing, building expert systems, searching, etc. This file assumes some knowledge of how to use the VED editor. See also TEACH *INDEX - an index of TEACH files PLOGTEACH *TEACHFILES - an annotated overview of Prolog TEACH files PLOGTEACH *INDEX - an index of Prolog TEACH files HELP * DOCUMENTATION - overview of Poplog documentation files The TEACH files are located in $usepop/pop/TEACH How to find other sources of on-line documentation HELP *DOCUMENTATION CONTENTS - (Use g with cursor on desired line, to access desired sections) -- Getting starting with the editor and files -- Basic overview of POP-11 -- Some mini-projects - for beginners -- More detailed POP-11 exercises and explanations -- Introduction to grammars, parsing, sentence generation -- Teach files concerned with pictures or images -- Teach files concerned with Prolog -- Teach files concerned with Lisp -- Teach files concerned with AI techniques -- Miscellaneous -- Getting starting with the editor and files ------------------------- A: An initial sequence: TEACH How to use VED to read teach files (using Visual 200) or VT100 Using VED with a VT100 type VDU. (= TEACH TEACH, but for VT100) VED Using VED to alter or create files MOREVED Follows on from TEACH VED MOREVT100 Follows on from TEACH VT100 SWITCHWINDOW How to switch between two VED windows BUFFERS How to switch between more than two VED files WINDOW Switching window sizes MARK Marking a range of text in the buffer - and doing things to the marked range LMR Loading (compiling) a "Marked Range". CTRL-D VEDPOP Switching between VED and POP-11 or PROLOG, etc B: More details: FILES Information about files and directories and purging PURGE On purging files YANK Using ENTER Y in VED to undo a deletion See also VTURTLE below -- Basic overview of POP-11 ------------------------------------------- Experienced programmers are advised to read: R. Barrett, A. Ramsay, A. Sloman POP-11: A PRACTICAL LANGUAGE FOR AI, Published 1985 by Ellis Horwood (UK), Wiley (USA) This has now been translated into French, published by: Manuels Informatiques Masson A sequel to this book describes AI techniques, often extending the teach files and demonstration programs in POPLOG A. Ramsay and R. Barrett AI In Practice: Examples in POP-11 Published 1986/7 Ellis Horwood and John Wiley Less experienced programmers may find TEACH PRIMER easier: PRIMER - draft primer of POP-11. This provides an introductory overview of POP-11 for people with some programming experience. For absolute beginners, it is best, instead, to start with on-line mini-projects listed below. The Primer replaces all the following: POPSUMMARRY POPNOTES -- Some mini-projects - for beginners --------------------------------- The following has been found to be a good initial teaching sequence: RIVER Introduction to defining procedures (to solve a puzzle) RESPOND How to write a MINI ELIZA. Intro to MATCHES and IF RIVER2 Writing a program to represent a mini-world RIVERCHAT Using the matcher to interpret 'river world' commands, etc. BLOCKS Using the database to represent the blocks world others: INFECT A 'forward chaining' inference exercise using the database ELIZA A longish introduction to writing your own Eliza ELIZA2 Continues ELIZA -- More detailed POP-11 exercises and explanations -------------------- APOSTROPHE Problems with using apostrophes in POP-11 lists. ARITH Arithmetic in POP-11 -- introductory exercises ARROW Use of "^" and "^^" in list expressions BOXES Representing lists as linked chains of boxes. See also WAL BRACKETS Information about POP-11 syntax: matching brackets DATABASE Introductory exercises using POP-11 database DATASUMM Summary of POP-11 database DATATHINK A simple exercise on 'forward chaining' inferences DECIMALS Decimal numbers in POP-11 DEFINE Introduction to procedure definition formats FOREACH The 'foreach' loop form explained LISTS Introduction to list manipulation LISTSUMMARY LISTQUESTIONS list processing exercises LISTANSWERS answers to LISTQUESTIONS MATCHES Introduction to using the POP-11 matcher MATCHES2 MATCHES continued MOREMATCH Follows on from MATCHES2 MSBLOCKS Using LIB TPARSE and LIB FACETS to write a reduced SHRDLU-like program MSDEMO Explains how to use the MSBLOCKS demonstration program MSBLOCKPROG Program for MSBLOCKS ONEOF Random selection from a list PERCENT The uses of (% .. %) for partial application and '%' in lists POPSUMMARY Summary of basic POP-11 facilities PROCEDURES Notes on POP-11 procedures QUESTIONS Some revision exercises in POP-11 READLINE Using READLINE for interactive programs RECURSE1 Notes on recursion RECURSE2 More on recursion REPORTS Notes on writing reports on programming REVISE Very elementary revision exercises on VED and POP-11 SETS List processing exercises involving sets SETS1 Used in TEACH SETS (there is also an answer file) SETS2 TEACH SETS continued (there is also an answer file) STACK Introduction to use of the stack TRACE How to alter POP-11 procedures to produce trace printout VARS Variable declarations in POP-11. (Global variables) VM An introduction to the POP-11 "virtual machine" WAL What are lists? -- Introduction to grammars, parsing, sentence generation ------------- ATNS Notes on Augmented Transition Networks ATNSUM Summary of ATN formalism GRAMMAR How to use LIB GRAMMAR for parsing or sentence generation PARSING Writing a top down parser which interprets a grammar ISASENT Introduction to parsing using the matcher and restrictions INTERP Semantic interpretation of parse trees MAKESENT Generating sentences - follows ISASENT PARSE Writing a very procedural parser PARSESENT Follows on from ISASENT - building parse trees TRANSSENT Follows on from PARSESENT - interpreting sentences WHYSYNTAX Introduction to ideas about grammars -- Teach files concerned with pictures or images ---------------------- TURTLE How to use the POP-11 VDU turtle VTURTLE Using VED to draw pictures with the turtle SEEPICTURE Intro to LIB SEEPICTURE: finding lines and junctions PICTURES Exercises on analysing straight line 'turtle' drawings REGIONS Use of LIB regions for region finding in turtle pictures LABELLING Introduction to line-labelling in a lamina world WALTZ Introduction to Waltz-filtering WALTZ2 An incomplete Waltz program for students to copy and complete CONVOLVE A package for convolving images with masks. -- Teach files concerned with Prolog ---------------------------------- PROLOG Intro to Prolog for POP-11 users CLAUSES Notes on clauses in Prolog RESOLUTION Notes on resolution theorem proving RESOLVEEXERCISE Exercises on resolution theorem proving in prolog See also HELP * PROLOG DOC * CONTINUATIONS gives a model for implementing Prolog in POP-11 -- Teach files concerned with Lisp ------------------------------------ See HELP * LISP -- Teach files concerned with AI techniques --------------------------- ADVENT.NEWOBJ Programming an adventure game using LIB NEWOBJ for object-oriented programming. See HELP *NEWOBJ, Compare TEACH * FLAVOURS AITHEMES A personal view of Artificial Intelligence, by A.Sloman DISCRIM An exercise on discrimination trees EVANS Structure matching - based on EVANS' analogy program (See also HELP * ANALOGY) EXPERTS Notes on expert systems, and library 'shells' FINGER A demonstration 'learning' program FLAVOURS An introduction to an Object Oriented Programming Package LEARNING Questions and references on learning programs PARPAR Partial parse trees, concept learning, and description refinement PSYS An earlier version of PRODSYS PRODSYS Introduction to production systems and LIB PRODSYS SCHEMATA Using LIB SCHEMA to match a script or frame against a story SEARCHING Introduction to state space searching SIR Writing a program like Raphael's SIR SOLVEMS Introduction to AI problem solving techniques SOLVER How to use LIB SOLVER - a demonstration problem solver PSTRIPS Prolog version of STRIPS STRIPS A file used by the POP11/STRIPS demonstration TOWER A depth-first-search problem-solving exercise VIEWS Using a "viewpoint" or "context" mechanism in problem solving WANG Theorem proving - Wang's algorithm -- Miscellaneous ------------------------------------------------------ DEMO Visitor's short introduction to POP-11 DIRECTORY Information about the VMS directory command GC An explanation of garbage collection INDEX A current list of teach files MAIL Using the VMS or Unix mail facility POEM, PEOM_BIT (for an exercise in the POPLOG User Guide) POPSYS How the POP-11 system works - introduction - incomplete PRINTING Printing files using VED or VMS commands PSTYLE On style of project write up STATS How to use POP-11 for simple statistical number crunching TEACHFILES This file TTT How to get a typing lesson --- C.all/teach/teachfiles --- Copyright University of Sussex 1995. All rights reserved. ----------