Basic Functions of writtenPAM
rest operate on text-graphic patterns.
returns a copy of the first text-graphic object in a pattern, and
returns a copy of the remainder of the pattern.
A word about the notation conventions used here. Text-graphic objects themselves are drawn
with thick black lines, e.g. , ,
and , and are quoted when appropriate using or . Algorithms are presented with a
"blackboard notation" Algol-like syntax; bold fixed width font is used for function and
variable names like
tg.Tree structure is represented by fine
lines, sometimes terminated by the empty pattern symbol
for clarity. In a sense, this whole paper is just a note on the consequences of a tree notation
for visual objects that allows the generalization of LISP to text-graphic forms.
patcons is the pattern constructor. It takes two arguments, the second of
which must be a pattern.
patcons returns a new pattern constructed by
putting its first argument onto the front of its second argument.
Then there are the three spatial functions,
locate takes two arguments, an object and a new location. It returns a
copy of the object at the new location.
rotate also takes two arguments, an object and the number of degrees
the object is to be rotated. It returns a copy of the object rotated
clockwise through the angle specified.
scale takes two arguments, an object and the factor by which the
object is to be scaled. It returns a copy of the object scaled by that