Reference Manual of Scheme Elucidator

Kurt NÝrmark ©    normark@cs.auc.dk    Department of Computer Science    Aalborg University    Denmark    

This is the reference manual of the Scheme Elucidator. The current version is just extracted from the source file via scheme-doc. We should in a more careful way write a manual, manually... And we should include some selected parts of the auto extracted stuff as the last part.

Alphabetic index:
applied-names-multiple-sources(applied-names-multiple-sources source-list-list)Index support: cross references involving both applied and defining name occurences
begin-documentation(begin-documentation)Begin the documentation part
browser-pixel-widthbrowser-pixel-widthThe width (in pixels) of the browser
control-frame-pixel-heightcontrol-frame-pixel-heightThe height of the top control frame in pixels
defined-names(defined-names source-list)Return the list of top-level defined names in the source list Source list may be as returned by read-source
documentation-entry(documentation-entry . elements)Define a documentation entry
documentation-intro(documentation-intro title author affiliation-list abstract)Define the title, affiliation, author, affiliation-list, and the abstract
documentation-section(documentation-section . elements)Define a documentation-section
elucidate-program-source(elucidate-program-source source-path destination-path source-list defined-names documented-names size source-key)Decorate the Scheme source-file with anchors and links
elucidator-verbose-modeelucidator-verbose-modeIf #t a number of messages are written on the output when processing is done
end-documentation(end-documentation)End of documentation part
end-file-empty-linesend-file-empty-linesThe number of empty lines in the bottom of an html file, in order to allow navigation to bottom stuf
html-directory(html-directory)The directory in which the generated html files are located
linking-from(linking-from word doc-id)This function is called during the traversal of a documentation body
make-all-indexes(make-all-indexes)Make both duplicate, cross-reference and defining-name indexes
make-no-indexes(make-no-indexes)Make neither duplicate, cross-reference or defining-name indexes
maximum-processing(maximum-processing)Set variables such that maximum processing is called for
minimum-processing(minimum-processing)Set variables such that minimum processing is called for
present-defined-name-index(present-defined-name-index)Index support: total index of all defining name occurences
process-only(process-only . source-keys)Only process the sources whose keys are given in the parameter
program-source(program-source . elements)Define a documentation source in terms of a number of elements
read-source(read-source file)Read the file (a lisp source file) and return a list of the lisp expressions at the source file
scheme-libraryscheme-libraryThe scheme library relative to software-base-library
set-documentation-name(set-documentation-name name)Define the name of the documentation
set-source-directory(set-source-directory dir)Defines the source directory to be dir
software-base-directorysoftware-base-directoryThe directory in which all Scheme programs and libraries are located
software-directorysoftware-directoryThe directory in which the elucidator is located
source-directorysource-directoryThe directory in which the documentation source is locacted
the-librarythe-libraryThe directory in which the libraries are located


elucidator-verbose-mode



Form
elucidator-verbose-mode

Description
If #t a number of messages are written on the output when processing is done. If #f, nothing is written.


 

DIRECTORY SETUP
A number of variables and functions which gives information about relevant directories.


software-base-directory



Form
software-base-directory

Description
The directory in which all Scheme programs and libraries are located


scheme-library



Form
scheme-library

Description
The scheme library relative to software-base-library


the-library



Form
the-library

Description
The directory in which the libraries are located


software-directory



Form
software-directory

Description
The directory in which the elucidator is located


source-directory



Form
source-directory

Description
The directory in which the documentation source is locacted. Must be redefined. Ends with a slash.


html-directory



Form
(html-directory)

Description
The directory in which the generated html files are located. Depends on source-directory


 

CONTROLLING THE AMOUNT OF PROCESSING
There are a number of variables which control the amount of processing. The user of the eludicator does not set these directly via set!. Rather he or she uses a function interface, which in turn manipulates the variables.


make-all-indexes



Form
(make-all-indexes)

Description
Make both duplicate, cross-reference and defining-name indexes


make-no-indexes



Form
(make-no-indexes)

Description
Make neither duplicate, cross-reference or defining-name indexes


process-only



Form
(process-only . source-keys)

Description
Only process the sources whose keys are given in the parameter. If no parameteres are given, process no sources If this form does not appear, process all sources.


minimum-processing



Form
(minimum-processing)

Description
Set variables such that minimum processing is called for


maximum-processing



Form
(maximum-processing)

Description
Set variables such that maximum processing is called for


set-source-directory



Form
(set-source-directory dir)

Description
Defines the source directory to be dir. The source directory is the directory which contains the documentation laml file, and the path typically ends in doc. Ends in a slash.


set-documentation-name



Form
(set-documentation-name name)

Description
Define the name of the documentation. Per convention, this is the same as the file name of the laml file, without extension.


documentation-intro



Form
(documentation-intro title author affiliation-list abstract)

Description
Define the title, affiliation, author, affiliation-list, and the abstract


end-file-empty-lines



Form
end-file-empty-lines

Description
The number of empty lines in the bottom of an html file, in order to allow navigation to bottom stuf


browser-pixel-width



Form
browser-pixel-width

Description
The width (in pixels) of the browser


control-frame-pixel-height



Form
control-frame-pixel-height

Description
The height of the top control frame in pixels


 

TOP LEVEL FUNCTIONS



program-source



Form
(program-source . elements)

Description
Define a documentation source in terms of a number of elements.


documentation-section



Form
(documentation-section . elements)

Description
Define a documentation-section. Internally, this function collect information about a documentation section


documentation-entry



Form
(documentation-entry . elements)

Description
Define a documentation entry. Internally, this function collects information about a documentation entry.


begin-documentation



Form
(begin-documentation)

Description
Begin the documentation part. This ends the preamble section.


end-documentation



Form
(end-documentation)

Description
End of documentation part. Makes all the html stuff. Until now we have collected stuff. Here we generate html files based on the collected stuff.


 

SCHEME SOURCE FILE READING



read-source



Form
(read-source file)

Description
Read the file (a lisp source file) and return a list of the lisp expressions at the source file


 

EXTRACTION OF TOP LEVEL DEFINED NAMES FROM PARSED SCHEME EXPRESSIONS



defined-names



Form
(defined-names source-list)

Description
Return the list of top-level defined names in the source list Source list may be as returned by read-source.


 

SCHEME DEPENDENT ELUCIDATOR



elucidate-program-source



Form
(elucidate-program-source source-path destination-path source-list defined-names documented-names size source-key)

Description
Decorate the Scheme source-file with anchors and links. Source-path is the name of the file with the Scheme source text (full path and extension). Destination-path is the name of the html file with where the decorated Scheme source is to be written (full path and extension). Source-list is the list of, read Scheme expressions on source-file. Defined-names is a list of name-definitions to which we link applied names. A name-definition is a list of the form (name . source-key), where source-key identifies the source file, in which name is a defining name occurence Documented names is a list of name descriptors, which are documented in the elucidated program. In this context, a name descriptor is a pair of the form (documented-name documentation-id). documented-name is a program name which occurs (in curly brackets) in the documentation. documentation-id is the id of the subsection, in which the name occurs.


linking-from



Form
(linking-from word doc-id)

Description
This function is called during the traversal of a documentation body. It returns the a-tag'ed and fonted link word. As a side-effect, it collects the documented names in the list documented-name-occurences.


present-defined-name-index



Form
(present-defined-name-index)

Description
Index support: total index of all defining name occurences.


applied-names-multiple-sources



Form
(applied-names-multiple-sources source-list-list)

Description
Index support: cross references involving both applied and defining name occurences


Generated: 25.3.1999, 15:05:22