HELP POP Andrew Law, April, 1987
This help file describes some of the files relating to programming
in POP-11. It assumes some knowledge of how to use the VED editor.
CONTENTS - (Use <ENTER> g to access required sections)
-- POP Vmcode, Compilation, Itemisation, Input/Output
-- POP Syntax, the Matcher & Recursion
-- POP-11 syntax procedures
-- List processing
-- Mixed language programming
-- Datatypes
-- Procedures concerned with the POP-11 Database
-- The POP-11 Turtle
-- Debugging, Errors & Mishaps, Timing and Effeciency
-- Identifiers
-- Arithmetic
-- Information about POP-11 libraries
-- Closures
-- Logical bit operations
-- Updater
-- Control facilities and co-routines
-- Stack manipulation
-- General POP-11 procedures
-- ASSOCIATED DOCUMENTATION
-- POP Vmcode, Compilation, Itemisation, Input/Output -----------------
TEACH *VM, *POPSYS, *GC
Introduction to Virtual machines
REF *VMCODE, DOC *SYSPOP11
Virtual machine code
HELP *PROGLIST, REF *PROGLIST, REF *POPCOMPILE
Compilation Processes and Procedures
REF *ITEMISE
Itemisation
REF *SYSIO, *SYSUTIL
System level I/O
HELP *POPDEVIN, *POPDEVOUT, *POPDEVERR
Redirecting POP Input/Output
HELP *IO
General I/O
-- POP Syntax, the Matcher & Recursion --------------------------------
HELP *SYNTAX, REF *POPSYNTAX
General syntax
HELP *EXPRSTA
Expressions & statements
HELP *CONDITIONALS, *IFSTMT
Conditional statements
HELP *LOOPS
Iterative constructs
TEACH *MATCHES, *MATCHES2,
The pattern matcher
HELP *RECURSION
Recursion
HELP *VARS
Variables
HELP *SYSWORDS
Overview file of syntax words
(Contents: Arithmetic operators, Logical bitwise operators (all of
precedence 4), Bitwise comparisons (precedence 6), Other
non-alphanumeric symbols, Datawords of built in data-types, Syntax
words and macros).
-- POP-11 syntax procedures -------------------------------------------
*AND, *ANDCASE, *ALPHABETICISER,
*APOSTROPHE, *ASCII,
*ASSIGN, *ACTIVE_VARIABLES,
*BY,
*CANCEL, *CASE, *CLOSE,
*COLON, *COMMA, *COMMENT,
*CONSTANT, *CONS_WITH,
*DEFINE, *DLOCAL, *DO,
*DOT,
*ELSE, *ELSEIF, *ELSEUNLESS,
*END, *ENDDEFINE, *ENDFOR,
*ENDIF, *ENDPROCEDURE, *ENDREPEAT,
*ENDUNLESS, *ENDUNTIL, *ENDWHILE,
*FOR, *FOREACH, *FOREVER,
*FOREVERY, *FORMS,
*GLOBAL, *GOTO, *GO_ON,
*HASH_,
*IDENTIFIERS, *IF, *IFSTMT,
*IN, *INFIX, *ITEM_CHARTYPE,
*LABELS, *LVARS, *LEXICAL,
*MACRO, *MACROS,
*NDASSIGN, *NEXTIF, *NEXTLOOP,
*NEXTUNLESS, *NONMAC, *NONOP,
*NONSYNTAX, *ON, *OPERATION,
*OR, *PERCENT, *PROCDEFINE,
*PROCEDURE, *QUITIF, *QUITLOOP,
*QUITUNLESS, *RECORDCLASS, *REPEAT,
*ROUNDBRA, *ROUNDKET,
*SECTION, *SEMICOLON, *SIGNS,
*SQUAREBRA, *SQUAREKET, *STEP,
*SWITCHON, *SYMBOLS, *SYNONYM,
*SYNTAX, *SYSWORDS,
*THEN, *TILL, *TIMES,
*TO,
*UNLESS, *UNTIL, *UPDATEROF,
*VARS, *VECTORCLASS,
*WITH_NARGS, *WHILE, *WORDS,
-- List processing ----------------------------------------------------
HELP *LISTS
-- Mixed language programming -----------------------------------------
HELP *PROGRAMMING, *LISP, PLOGHELP *HELPFILES
-- Datatypes ----------------------------------------------------------
HELP *PROGRAMMING
-- Input and output ---------------------------------------------------
HELP * INPUT, HELP * OUTPUT, REF * SYSIO, REF * CHARIO, REF * SYSUTIL
-- Procedures concerned with the POP-11 Database ----------------------
HELP *DATABASE
The main overview file
HELP *ADD
Adding items
HELP *REMOVE, *FLUSH
Removing items
HELP *FOREACH, *FOREVERY, *IT
Iterating over items in the database
HELP *PRESENT, *ALLPRESENT, *LOOKUP, *WHICH
Checking whether items are present
HELP *STOREDATA
Saving the current state of the database on disk
HELP *SUPER
A Prolog-like extension to the database
TEACH *SOMESCHEMA, *SCHEMATA
Using the database for producing script/frame/schema like behaviour
See also HELP *MATCHES
See also contents of
$usepop/master/C.all/lib/database
-- The POP-11 Turtle --------------------------------------------------
HELP *TURTLE, *TURTLESUM, TEACH *TURTLE
The POP-11 turtle
HELP *VTURTLE
Turtle facilities based on the VED editor
HELP *LTURTLE
Using a list of lists instead of arrays
HELP *STOREPICTURE, *READPICTURE
Storing and reading pictures
HELP *SEEPICTURE, TEACH *SEEPICTURE, HELP *REGIONS
Redisplaying turtle pictures in terms of lines, junctions and regions
HELP *CONVOLVE
Demonstration of some of the techniques used for processing grey-level
pictures.
HELP *INTERSECT
Returning the point P which is the intersection of two lines
See also contents of
$usepop/master/C.all/lib/turtle
-- Debugging, Errors & Mishaps, Timing and Effeciency -----------------
HELP * DEBUGGER
A source level debugger for POP-11
HELP *TRACE, *UNTRACEALL, *POPREADY
Debugging aids
HELP *EFFICIENCY, REF *FASTPROCS
Efficiency & speed
HELP *CLOCK, *TIME REF *NUMBERS
Timing facilities
HELP *ERRORS, *MISHAPS, *POPMISHAPS, *POPWARNINGS, *WARNING,
*SYSCALLERS, REF * MISHAPS
Errors & mishaps
See also
HELP *PROGRAMMING
-- Identifiers --------------------------------------------------------
HELP *FULL_IDENTPROPS, *IDENTPROPS, *IDENTTYPE, *ISASSIGNABLE,
*ISCONSTANT, *ISGLOBAL, *ISPROTECTED
Refer to procedures which can be applied to a word to find out about
its status as an identifier.
-- Arithmetic --------------------------------------------------------
HELP *MATH, *SYSWORDS, REF* NUMBERS, REF *FASTPROCS, HELP *FASTPROCS
-- Information about POP-11 libraries ---------------------------------
HELP *LIBRARIES, *AUTOLOAD, *POPAUTOLIST, *POPUSESLIST
-- Closures -----------------------------------------------------------
HELP *CLOSURES, *PARTAPPLY, *PERCENT, *PDPART, *FROZVAL
-- Logical bit operations ---------------------------------------------
REF *NUMBERS/Bitwise, HELP *SYSWORDS
-- Updater ------------------------------------------------------------
HELP *UPDATER
-- Control facilities and co-routines ---------------------------------
HELP *PROCESS, *CONTROL, *EXITFROM, *POPREADY, REF *PROCESS
HELP *CHAIN, *CHAINFROM, *CHAINTO, *EXITTO, *CATCH, *JUMPOUT,
-- Stack manipulation -------------------------------------------------
HELP *STACK, TEACH *STACK, REF *STACK
-- General POP-11 procedures ------------------------------------------
(U - means Unix only)
*ABS ALLBUTFIRST ALLBUTLAST ALLPRESENT
*ALPHABEFORE APPDATA APPDIC APPLIST
*APPLY APPPROPERTY AREIN
*ARRAYS ARRAYSCAN ARRAYVECTOR
*ASCII ASSOC ATOM BACK
*BIGINTEGERS BITS_IN BITS_OUT BOOLEAN
*CALLER CALLSTACKLENGTH CD CATCH
*CHAIN CHAINFROM CHAINTO CHARACTERS
*CHARERR CHARIN CHARIN_TIMEOUT CHAROUT
CLEARPROPERTY
*CLEARSTACK CLOSURES COLON
*COMPILE CONSKEY CONSPAIR CONSPROC
CONSREF CONSSTRING
*CONSVECTOR CONSWORD CONT COPY
*COPYDATA COPYLIST COPYTREE COS
*COUNTITEM CUCHARERR CUCHARIN CUCHAROUT
*CUCHARTRACE CURRENT_DIRECTORY CURRENT_SECTION
*DATAFILE DATAKEY DATALENGTH DATALIST
*DATAPROCS DATAWORD DEADPROC DECIMALS
*DEST DEST_CHARACTERS DESTPAIR
*DEVICE DEVICE_OPEN_NAME DEVNAME
*DIR DISCIN DISCOUT DISCAPPEND
*DIV DL DUP
*EQUAL ERASE ERASENUM EXITFROM
*EXITTO EXP EXPANDLIST EXPLODE
*EXPRASS
*FALSE FAST_APPPROPERTY FASTPROCS
*FILE FILL FLATLISTIFY
*FRACOF FROM FRONT FROZVAL
*GENSYM GETLINE
*HALTS HD
*IDENTFN IDENTPROPS INCHARITEM INITS
*INITV INITVECTORCLASS INSTANCE INTERRUPT
*INTERSECT INTOF ISCLOSURE ISDDECIMAL
*ISDECIMAL ISDEVICE ISENDSTRING ISIN
*ISINTEGER
*ISLIST ISPAIR ISPROCEDURE ISPROCESS
*ISPROPERTY ISREF ISSTRING ISSUBSTRING
*ISSUBSTRING_LIM ISUNDEF ISVECTOR ISVECTORCLASS
*ISWORD ITEM_CHARTYPE ITEMREAD
*JUMPOUT
*KEYS KRESUME
*KSUSPEND
*LAST LENGTH LIB LISTLENGTH
*LISTREAD LMEMBER LOAD LOCCHAR
*LOCCHAR_BACK LOG LOWERTOUPPER
*MAPDATA MAPLIST MATCHES MATCHESALLOF
*MATCHESONEOF MATH MAX MEANING
*MEMBER MIN MOD
*MORELISTS MOVE_BYTES MOVE_SUBVECTOR
*NCMAPDATA NCMAPLIST NCREV NEGATE
*NEWANYARRAY NEWANYPROPERTY NEWARRAY NEWASSOC
*NEWLINE NEWMAPPING
*NEWPR NEWPROPERTY NEWQUEUE
*NEXTCHAR NEXTITEM NIL NL
*NOT NULL NUMBERS
*ONEOF OUTCHARITEM
*PACKITEM PAIR
*PARTAPPLY PDCOMP PDNARGS PDPART
*PDPROPS PDTOLIST PI POP_FILE_MODE (U)
*POP_LONGSTRINGS POP_OPTIMISE POP_PR_EXPONENT POP_PR_PLACES
*POP_PR_QUOTES POP_PR_RADIX POP_PR_RATIOS
*POP_SECTION POP_TIMEOUT
*POPARGLIST POPAUTOLIST POPCONSTRUCT POPDEFINEPROCEDURE
*POPDEFINECONSTANT POPDEVERR
*POPDEVIN POPDEVOUT POPDEVRAW POPDPLACES
*POPDPRECISION POPENVLIST (U) POPEXIT POPGCRATIO
*POPGCTIME POPGCTRACE POPLASTCHAR POPLASTITEM
POPLINEMAX
*POPLINEWIDTH POPMATCHVARS POPMEMLIM POPMEMUSED
*POPNEWLINE POPPID POPPRINT POPPROMPT
*POPRADIANS POPREADY POPSETPOP POPSYSCALL
*POPUSERNAME POPUSESLIST POPVAL PPR
*PR PRESENT PRINT PRINTLENGTH
*PRINTARROW PRINTF PRNUM PROCASDATA
*PROCCALL PROCESS PROGLIST PROPERTIES
*PURGE
*QUOTE_PR
*RANDOM RANSEED RAWCHARIN RAWCHAROUT
*RAWOUTFLUSH READEXPRESSION READITEM READLINE
*READTILL REALOF RECORDS
*RECURSION RECURSIVE_FRONT REFERENCES
*REM REQUESTLINE RESUME RETURN
*REV RUNPROC
*SAVE SAVEPROC SECTION_CANCEL SETFRONTLIST
*SETPOP SYSFULLFILENAME
*SIGN SIN
*SKIPCHAR SKIPCHAR_BACK SORT SPACE
*SPR SQRT STACK STACKLENGTH
*STRINGIN STRINGS STRMEMBER STRNUMBER
*STRLOWERCASE STRUPPERCASE
*SUBSCR_STACK SUBSCRL SUBSCRS SUBSCRV
*SUBSCRW SUBSTRING SUSPEND SYMBOLS
*SYSFORK SYS_FILE_STAT SYS_INPUT_WAITING
*SYS_LOCK_HEAP SYS_OS_TYPE SYS_PROCESSOR_TYPE
*SYSMODTIME SYS_UNLOCK_HEAP SYSCALLERS
*SYSCANCEL SYSCOMPILE SYS_CONVERT_DATE
*SYSCLOSE SYSCREATE SYSDAYTIME
*SYSDECLARE SYSDEFINE SYSDELETE SYSDIRECTORY
*SYSEXECUTE (U) SYSEXIT
*SYSFILEDIR
*SYSFILEHOST SYSFILEMODE (U) SYSFILEPARSE SYSFILESIZE
*SYSFILETYPE SYSFORK (U) SYSGARBAGE SYSHASH
*SYSHIBERNATE
*SYSLOOP SYSLOOPEND SYSMATCH
*SYSNEED SYSNMTRY
*SYSOBEY SYSOBEYLIST SYSOPEN
*SYS_REAL_TIME SYSREPEAT
*SYSPR SYSPROCEDURE
*SYS_PROCESSOR_TYPE SYSREAD
*SYSRESTORE SYSSAVE SYSSAVEINCR SYSSEEK
*SYSSETTIMER SYSSLEEP SYSSORT
*SYSSYNONYM SYSTIME SYSTRANSLATE SYSTRMDEV
*SYSTRY SYSUNPROTECT
*SYSWRITE
*TABS TERMIN THROW TIME
*TIMEDIFF TL TRACE TRUE
*TYPE
*UNDEF UNDEFWORD UNPACKITEM
*UNTRACE UNTRACEALL UPDATER
*UPPERTOLOWER USES
*VALOF VECTORS
*WORDCOUNT WORDQUOTE WORDS WORDSWITH
-- ASSOCIATED DOCUMENTATION -------------------------------------------
HELP *PROGRAMMING
See all the ref files described in REF * REFFILES
--- C.all/help/pop -----------------------------------------------------
--- Copyright University of Sussex 1991. All rights reserved. ----------Author: Andrew Law, April, 1987