HELP LIBFILES

Andrew Law, April 1987


This file assumes some knowledge of how to use the VED editor.

How to find other sources of on-line documentation: HELP *DOCUMENTATION

Contents

Select headings to return to index

General Introduction

The file DOC * SYSSPEC gives an overview of the Poplog Directory structure.

The Pop11 library of demonstrations and utilities is found in the
sub-directories
    $usepop/pop/lib/*
Prolog specific libraries are found in
    $usepop/pop/plog/lib

$usepop/pop/lib is composed on the following subdirectories

auto demo lib sun data flavours psv turtle database include ved

See below for a description of their contents.

HELP *LIBRARIES
    For introduction to libraries and library facilities
REF *LIBRARY
    Details of the library mechanism
HELP *LIB *USES, *SHOWLIB, *LOAD, *COMPILE
    Procedures for loading/viewing library files
HELP *POPAUTOLIST (autoloadable) *POPUSESLIST (non-autoloadable)
    Program library search lists
HELP *PROLOGLIBLIST
    Library directories used by Prolog
DOC *SYSSPEC /Program libraries
    A general overview of the structure of the Poplog system

Autoloadable Libraries

$usepop/pop/lib/auto:

These are 'autoloaded' (see HELP *AUTOLOAD). Other autoloadable directories may be added to *POPAUTOLIST. The default value of *POPAUTOLIST is easily altered in /pop/pop/init.p which is compiled whenever POP11 starts up (see HELP *INITIAL).

Files in $usepop/pop/lib/lib are only loaded if this is explicitly requested by the LIB command, or the USES command. (See LIB.P and USES.P). The directories accessed by LIB and USES are those listed in POPUSESLIST which may also be set up in /pop/pop/init.p

Data Libraries

$usepop/pop/lib/data:

This contains data used by some of the other library packages.

Database Libraries

$usepop/pop/lib/database:

This contains autoloadable libraries used by the database facility see HELP *DATABASE

Demo Libraries

$usepop/pop/lib/demo:

This contains demonstration programs

    $usepop/pop/lib/lib/blocks:
aread.me        blocks.p        driver.p        fits.p          utils.p

This contains demonstration programs for a robot which understands English and manipulates blocks in a simulated world.

Flavours Libraries

$usepop/pop/lib/flavours:

This contains libraries used by the flavours object oriented programming language.

See HELP *FLAVOURS REF *FLAVOURS

Include Libraries

$usepop/pop/lib/include:

Header files e.g., used for systems significant constants

PSV Libraries

$usepop/pop/lib/psv:

Some saved images (including the prolog and lisp images)

Sun Libraries

$usepop/pop/lib/sun:

Library files needed used for sun workstations. See HELP *VEDSUN

Libraries Concerned With The X Interface

See HELP * X

SHOWLIB * POPXLIB

Turtle Libraries

$usepop/pop/lib/turtle:

Library files used by the turtle facility, e.g.,

HELP *TURTLE, TEACH *TURTLE
    Introduction to the Pop11 turtle
HELP *TURTLE, TEACH *TURTLE
    Introduction to the Pop11 turtle
HELP *VTURTLE, LIB *VTURTLE
    Turtle facilities based on the VED editor
HELP *LTURTLE, LIB *LTURTLE
    Using a list of lists instead of arrays
HELP *READPICTURE, LIB *TURTLE
    Reading in pictures, and storing them
    in the TURTLE picture
HELP *STOREPICTURE, LIB *TURTLE
    Storing pictures
HELP *SEEPICTURE, TEACH *SEEPICTURE
    Redisplaying turtle pictures in terms of
    lines and junctions
HELP *REGIONS, LIB *REGIONS
    Finding regions in turtle pictures
HELP *CONVOLVE, LIB *CONVOLVE
    Demonstration of some of the techniques used for processing
    grey-level pictures.
HELP *INTERSECT, LIB *INTERSECT
    Returning the point P which is the intersection of two lines
LIB *GEOM3D.P, LIB *GEOMETRY.P
    3-D geometry packages

VED Libraries

$usepop/pop/lib/ved:
Many extensions to the editor commands are to be found in
    $usepop/pop/lib/ved

See for example VED_DM.P. If a VED ENTER command is given which is not recognised, then 'VED_' is attached to the command, and a search is made for an autoloadable file which will define an appropriate procedure. E.g.

<ENTER> dm

will cause the file $usepop/pop/lib/ved/ved_dm.p to be compiled, and the procedure defined therein to be obeyed.

See HELP *VED

Prototype libraries

$usepop/pop/lib/proto:

Contains prototype versions of new libraries, supplied for evaluation and comment. To make any experimental libraries supplied here accessible, do:

uses popprotolib;

See SHOWLIB * POPPROTOLIB

The General Pop11 Libraries

$usepop/pop/lib/lib:

The are non-autolodable and cover a wide range of subjects and facilities. Some of these are described in the following sections

(Programming)

LIB *SUPER.P
    PROLOG like extension of the Pop11 database
HELP *NEWQUEUE, LIB *NEWQUEUE
    A queue mechanism
LIB *SMATCH.P
    Using matches inside sections
LIB *FLOAT_PARAMETERS.P
    Defining floating-point parameter constants
LIB *SYSSTRING.P
    Defining large constant string for use in libraries
LIB *FORM, *FORMS.P, HELP *FORMS
    Changing and creating syntax forms
LIB *SYSOPS.P
    Attempt to compile POPAS files as ordinary POP11

(Debugging, Tracing, Programming Support)

*LIB DEBUG.P
    Interactive Debugging Aid
LIB *SHOWCODE, HELP *SHOWCODE
    Tracing POPOLOG virtual machine code planting procedures useful for
    debugging compilers
LIB *SLOWPROCS, HELP *FASTPROCS
    Remove fast procedures for debugging
LIB *TIME, HELP *TIME
    Timing how long a procedure takes
LIB *GCTIME.P, HELP *TIME/ GCTIME
    Measuring garbage collection time
HELP *PROFILE
    Profiling where the system is doing the most work
LIB *HALTS, HELP *HALTS
    Deciding whether a procedure will ever terminate
LIB *SHOWTREE.P
    Visual Demonstration of lists in
LIB *FILE.P
    Sorting Data in files
LIB *CROSSREF.P
    Prototype cross referencer for pop programs
LIB *CONTEXT
    Facilities for saving and restoring the values of a set of global
    variables so that the state of a computation may be saved and later
    resumed.
HELP *SUBSYSTEM, LIB *SUBSYSTEM.P
    Making several subsystems accessible
LIB *PROLOGLIBLIST.P
    Customising the library directories used by Prolog

(Printing)

LIB *NEWPR.P
    Pretty printing of objects
LIB *POP_PR_RATIOS.P
    Flag to toggle printing of ratios as floats
HELP *POPPRINT
    A Pretty printer for lists of pop programs

(Input/Output Control Libraries)

(BSD machines only)

LIB *IOCTL_LOCALS.P
    Constants for accessing local mode word of new tty driver
LIB *IOCTL_LTCHARS.P
    Constants for accessing 'ltchars' structure (local interrupts)
LIB *IOCTL_SGTTYB.P
    Constants for accessing 'sgttyb' structure (basic modes)
LIB *IOCTL_TCHARS.P
    Constants for accessing 'tchars' structure

("Classic" AI Program Demos)

Packages simulating "classic" A.I. programs

LIB *ANALOGY.P, HELP *ANALOGY, *EVANS, HELP *PLANET,
TEACH *SOLVEMS, LIB *SOLVER.P
    Evan's  analogy program
TEACH *FINGER
    Selfridge's Number learner
TEACH *RIVER
    River Crossing
LIB *MSBLOCKS.P
    SHRDLU blocks world
LIB *MSHAND.P, TEACH *BLOCKS
    Robot hand
PLOGHELP *CLAUSIFY, *RESOLVE
    Clausification and Resolution
HELP *RMS, LIB *RMS
    Truth maintenance system
See also the contents of
    $usepop/pop/lib/demos
    $usepop/pop/lib/data

(Natural Language Processing (NLP))

TEACH *GRAMMAR, LIB *GRAMDEMO.P
    Context free grammar parser/generator
HELP *FACETS
    Semantic interpretation of sentences
HELP *TPARSE
    More general version of LIB *GRAMMAR
PLOGHELP *PHRASE, *GRAMMAR_RULE, *LERNGRAM, *EXPAND_TERM, *PROGRAM
    Prolog NLP facilities
TEACH *ATNS, *ATNSUM, *GRAMMAR, *PARSING, *ISASENT, *INTERP,
*MAKESENT, *PARSE, *PARSESENT, *TRANSSENT, *WHYSYNTAX
    Related documentation

(Vision Processing Library Packages)

TEACH *WALTZ, *WALTZ2 LIB *WALTZ.P, *LABELS.P, *TETRA
    Introduction to Waltz filtering techniques
LIB *MATRIX.P
    Fast 2-D arrays for vision processing
LIB *GEOM3D.P, LIB *GEOMETRY.P
    3-D geometry packages
LIB *GAMMA
    The Gamma function

(Event Simulation, Multi-Tasking)

HELP *ACTOR, LIB *EVENT, HELP *PROCESS

Using the Pop11 PROCESS facility to implement basic procedures for discrete event simulation. This can be used for multi - tasking.

(Graphics Related Libraries)

REF *VEDDRAWLINE, LIB *DRAWLINE.P
    Drawing/deleting lines using graphchars

See also turtle facilities (this file)

See also HELP * X, HELP * RC_GRAPHIC for X-based graphical facilities.

(Prolog)

See also contents of
    $usepop/pop/plog/lib
PLOGHELP *HELPFILES
    Overview of Prolog files
LIB *SUPER.P
    PROLOG like extension of the Pop11 database
HELP *PROLOGLIBLIST
    Library directories used by Prolog

(FLAVOURS)

See
    $usepop/pop/lib/flavours

Miscellaneous

LIB *GAMMA
    The Gamma function
LIB *POPSUNLIB.P
    Adding the sun library to the liblist
LIB *GET_TTY_REPORT.P
    Getting a report from a terminal
HELP *CALENDAR
    Print a calendar for a given month or year

--- C.all/help/libfiles --- Copyright University of Sussex 1993. All rights reserved. ----------