Next:  INTRODUCTION TO SECOND 
Up: No Title
 Previous: No Title
 
 
 
-   INTRODUCTION TO SECOND EDITION (Jan 1996)
 
 -   PREFACE TO THE FIRST EDITION (Sept 1994)
 
 -   CHAPTER.1: INTRODUCTION --- THE ROOMS EXAMPLE
 
 -   CHAPTER.2:  INTRODUCTION TO THE SYNTAX AND SEMANTICS OF POP-11
 
-   Internal semantics and external semantics
 -   Expressions denote objects. Imperatives denote actions
 -   Compile time vs run time processes
 -   How a programming language is specified: virtual machines
 -   Some Pop-11 data-types and their external forms
 
 -   Some Pop-11 actions
 
 -   Built in and user-defined procedures
 -   Errors and error messages
 
 -   Comments in Pop-11 programs
 -   Pop-11 Expressions: some examples
 -   Imperatives: some examples
 
 -   Procedure definitions are initialised identifier declarations
 -   Global and local procedure definitions
 -   Procedure calls in Pop-11
 
 -   Using infix operators
 -   Procedures which produce results
 
 -   Exercises
 -   Introduction to printing in Pop-11
 
 -   Conditionals and conditions
 -   Predicates and recognizer procedures
 -   Summary of syntactic roles in Pop-11 programs
 -   Lexical analysis and the Pop-11 itemiser
 -   Itemisation rules in Pop-11
 
 -   Revision questions
 -   Built in Pop-11 data types
 -   Procedures associated with data-types
 
 -   Data creation, memory management and the heap
 
 -   List of Pop-11 Data-types
 
 -   Further information on built in data types
 
-   Words
 -   The internal representation of words
 -   The Pop-11 dictionary
 -   Strings
 -   Dstrings
 -   Idents (identifier records)
 -   Types of numbers in Pop-11
 -   Integers and Bigintegers
 -   Floating point numbers: decimals and ddecimals
 -   Ratios use indefinite precision
 -   Complex numbers
 -   Recognizers for number types: integral, rational, decimal, complex
 -   Reading in numbers relative to a base
 -   Characters (8 bit integers)
 -   Booleans (true and false)
 -   Pairs and lists
 -   References (single component records, consref, cont).
 -   Types of vectors: strings, full vectors, intvecs, shortvecs
 -   Standard full vectors
 -   Packed integer vectors: intvecs and shortvecs
 -   Procedures, closures, arrays, properties
 -   closures
 -   arrays
 -   Using newanyarray to create an array from an intvec
 -   properties
 -   `Destroy properties'
 -   Declaring a variable to be of type procedure
 -   Lightweight processes
 -   undefs
 -   Keys
 -   Unique objects: nil, termin, stackmark
 -   The empty list []
 -   The stream terminator, termin
 -   The stack mark, popstackmark
 -   Devices
 -   External pointers
 -   Sections
 -   Prolog variables and terms: prologvars, prologterms
 -   Data types required for the Poplog X window interface
 
 
 -   Objectclass - An object oriented extension to Pop-11
 
 -   Additional information needed to define Pop-11
 -   The garbage collector
 -   Exercises
 
 
 -   CHAPTER.3: PROCEDURES AND THE STACK
 
 -   CHAPTER.4:  PROCEDURES IN POP-11
 
 -   CHAPTER.5: NUMERICAL AND LOGICAL FACILITIES IN POP-11
 
 -   CHAPTER.6: LIST PROCESSING IN POP-11
 
-   On knowing about lists
 -   Why use lists?
 
 -   Lists vs other representations
 -   Lists in AI
 -   Constructing lists in Pop-11
 
 -   WARNING lists in procedures are not "constants"
 
 -   Concatenating lists using <>
 -   Merging lists using the double up-arrow
 -   Lists are a derived data-type
 
 -   Why use "hd" and "tl" instead of "front" and "back" ?
 
 -   Diagrams showing static lists represented as pairs
 
 -   Dynamic lists: generators and pdtolist
 
 -   Some procedures for manipulating lists
 
-   cons, conslist, initl, sysconslist
 -   allbutfirst, allbutlast
 -   dl or explode, destlist
 -   applist, maplist, ncmaplist
 -   recursive_front
 -   expandlist
 -   rev and ncrev
 -   setfrontlist
 -   sort and syssort
 -   last, lastpair
 -   oneof, shuffle
 -   delete, ncdelete
 -   flatten and flatlistify
 -   length and listlength
 -   copy, copylist, copydata, copytree
 -   subscrl, fast_subscrl
 
 
 -   Predicates on lists
 
 -   Iterating on lists
 -   Using for ... in ... do .... with lists
 
 -   Iterating over two or more lists
 -   Iteration vs Recursion
 -   Exercises
 -   More exercises on lists
 -   Exercises on the meaning of the single and double up-arrows
 
 
 -   CHAPTER.7: THE POP-11 PATTERN MATCHER AND DATABASE
 
 -   CHAPTER.8 AN AI APPLICATION: A GENERAL PROBLEM SOLVER
 
 -   CHAPTER.9 RECORDS, VECTORS AND OBJECTCLASS
 
 -   APPENDIX
 
 -     About this document ... 
 
 
Aaron Sloman 
Fri Jan  2 03:17:44 GMT 1998