perm filename COMMEN[1,LMM] blob
sn#034813 filedate 1973-04-09 generic text, type T, neo UTF8
PRINTCOMMENTS)
CYCLIC
VALENCE(X)
(* This function finds
the VALENCE of an atom
or STRUCTURE or
STRUCFORM)
FVPARTITION1(N VL S)
(* This function is a sub-function of FVPARTITIONS -
I'm not too sure what it does offhand)
FVPART1(N MAXSUM MAXOCCUR)
(* Again , i'm not too
sure what this function
does)
MINLOOPS(VALENCELIST)
(* This function computes the minimum number of
loops that any STRUCTURE with the given VALENCELIST
must have -
See cycgen paper for derivation of formula)
MAXLOOPS(VALENCELIST)
(* This function computes the maximum number of
loops that any STRUCTURE with the given VALENCELIST
may have -
See cycgen paper for derivation of formula)
SUPERATOMPARTITIONS(CL U)
(* This function finds all partitions of CL and
unsaturation U into superatom parts and remaining
atoms, according to the constraints given in the
cycgen paper about valid superatom parts -
The value is a list of SUPERATOMPARTITION records)
MAXUNSATL(PC U)
(* This function, i think, takes a composition list
of composition lists (pc) and an unsaturation
(U) and returns a list of the maximum unsaturation
that may be assigned to each individual part in pc
such that the final structures will each have
correct TOTAL unsaturation and a free VALENCE of at
least one)
COMPUTEFV(U CL)
(* This function computes the free VALENCE of a
composition and saturation -
I.e. Any STRUCTURE with the given composition and
unsaturation will have the resulting number of free
valences)
ROWS(LL)
(* Ll is a list of lists -
If one envisions it as a matrix, this function
computes the transpose)
BIVALENTPARTITIONS(VL)
(* This function takes a valence list
(starting with bivalents) and partitions
(CAR VL) into (number of EDGES IN a STRUCTURE built
on (CDR VL)) parts)
TRIMZEROS(L)
(* This function takes a list of numbers and returns
the list with trailing zeros removed)
TD(VL J)
(* This function takes a VALENCE list starting with
j-valents and returns the TOTAL VALENCE)
M2/2(N)
(* Silly function -
Computes (n/2) -1)
LOOPPARTITIONS1(P VL J)
(* SUBFUNCTION OF
LOOPPARTITIONS -
DONT REMEMBER WHAT IT
DOES)
JLIST(LL N)
(* AGAIN, I DON'T
REMEMBER WHAT THIS ONE
DOES)
LPROWS(LPP VL)
(* AGAIN, I DON'T
REMEMBER WHAT THIS ONE
DOES)
LOOPPARTITIONS(P VL)
(* THIS FUNCTION FINDS
ALL LOOP PARTITIONS -
I'M NOT SURE HOW,
THOUGH)
CLPARTLP1(CL ROW N)
(* Again, i don't
remember what this one
does)
STRUCTURESWITHATOMS(CLL STRUC)
(* CLL is a list of composition lists the first CL
contains bivalent atoms, the second, trivalent
atoms, and so forth -
Struc is a STRUCTURE -
STRUCTURESWITHATOMS finds all ways of attaching the
given atoms to the STRUCTURE by labelling)
NUMPARTITIONS(N NUMPARTS MINPART MAXPART)
(* This function finds all partitions of the number
N into numparts parts, WHERE each part is greater or
equal to minpart and less than or equal to maxpart -
The result is a list of partitions, WHERE a
partition here is a list of numbers, the sum of
which is N)
NUMPARTITIONS*(U MN MAXIMA OCCURLIST)
(* Again, i don't
remember what this one
does)
FVPARTITIONS(FV VL)
(* This function finds all ways of partitioning free
valences fv among the "ATOMS" of vl
(vl is a VALENCE list) according to appropriate
constraints)
↑LSTRGEN
STARTUPNIL
(* This function does all of the things necessary to
LOAD the STRUCTURE generator)
↑LCL
CLDIFF(CL1 CL2)
(* This function computes the DIFFERENCE of two
composition lists -
Zero terms are eliminated)
CLCOUNT(CL)
(* This function
computes the number of
elements IN a
composition list)
CLPARTS(CL PARTSIZE)
(* This function finds all SUB compositions of the
composition list cl1 which are of SIZE parsizze, and
returns a list of the possibilities -
I.e. (CLPARTS ' ((A . 3) (B . 2)) 2) returns
(((a . 2)) , ((a . 1) (b . 1)),
((b . 2))))
CLPARTITIONSN(CL N MINPARTSIZE MAXPARTSIZE)
(* This function finds all partitions of CL into N
parts WHERE each part has a CLCOUNT of at least
MINPARTSIZE and at most MAXPARTSIZE)
CLPARTITIONS(CL PARTSIZES)
(* PARTSIZES IS a list of numbers -
This function finds all partitions of CL into PARTS
WHERE each PART IS of the corresponding SIZE IN
PARTSIZES -
The sum of PARTSIZES must be equal to the CLCOUNT of
CL or ELSE the value will be NIL -
The value IS a list of partitions;
a partition IS a list of composition lists)
CLCREATE(L)
(* This function takes a list which may have
duplicates, and returns a composition list which
corresponds to it -
I.e. (CLCREATE ' (A A A B B C)) returns
((a . 3) (b . 2) (C . 1)))
CLINSERT(ITEM CL)
(* This function returns
the composition list CL
with "ITEM" inserted)
CL=PARTS(CL NPARTS PARTSIZE)
(* This function finds all partitions of CL into
NPARTS parts, where every part is of size PARTSIZE -
NPARTS*PARTSIZE must be equal to the CLCOUNT of CL)
CLBYVALENCE(CL)
(* CL must be a composition list of things with a
VALENCE -
This function returns a list of composition lists;
the first CL contains those things with VALENCE 2 -
The second those with VALENCE 3, and so on)
CLPARTITIONSL(CL LL)
(* Damn if i can
remember what this one
does)
CLEXPAND(CL)
(* This function is the inverse of CLCREATE -
It takes a composition list and returns a list with
the appropriate number of copies of each item IN the
composition list -
I.e. (CLEXPAND ' ((A . 3) (B . 2))) gives
(a a a b b))
↑LGENLISP
GROUPRADS(RADCLIST)
(* This function takes a composition list of lists,
and returns all possible selections of items from
those lists; e.g. doing GROUPRADS on
(((a b C D e) . 3) ((F g H i) . 2)) will return all
lists in which three elements come from
(a b C D e) and 2 elements come from
(F g H i) -
Duplication is allowed; i.e.
(a a a F F) will be among the resulting lists)
GROUPRADS1(RADLIST N RADSLIST)
(* Subfunction of
GROUPRADS)
FIX+(X)
(* Rounds a number
upward)
GROUPBY(FN L)
(* FN is a functional argument, l is a list -
This function groups l by the value of FN applied to
its elements -
It returns a list of groups -
The CDR of a GROUP contains elements of l which all
have the same value of FN -
The CAR is that value -
Can be used to GROUP a list of atom names by their
VALENCE, for EXAMPLE)
*CARLIST(L)
(* (MAPCAR L
(FUNCTION CAR)))
CDRLIST(L)
(* (MAPCAR L
(FUNCTION CDR)))
LCARLIST(L)
(* (MAPCAR L
(FUNCTION CARLIST)))
LCDRLIST(L)
(* (MAPCAR L
(FUNCTION CDRLIST)))
DELETE(I L)
(* Returns l with the
first instance of i
deleted)
DIFF(L1 L2)
(* Returns the list of elements of l1 which are not
elements of l2)
ORDPAIR(X1 X2)
(* Returns either (CONS X1 X2) or
(CONS X2 X1) depending on whether x1<x2 or not -
Uses a generalized ordering in which anumbers are in
order numerically, and less than atoms which are
ordered alphabetically, and are less than lists
which are ordered first by their CAR and then by
their CDR)
MAXREST(VL J)
(* Silly function used
somewhere -
Again damn if i know)
MAX(X Y)
(* MAX of X and Y)
MIN(X Y)
(* MIN of X and Y -
Uses INTEGER arithmetic)
TWICE(X)
(* X*2)
LEQ(X Y)
(* Generalized ordering
function -
See ORDPAIR)
*PLUS(L)
(* L is a list of
integers -
*PLUS computes their
sum)
LMASSOC(X Y Z)
(* This is similar to the ASSOC on the 360 -
If there is an element of Y whose CAR is equal to Y,
returns its CDR -
Otherwise returns z)
*MAX(L)
(* L is a list of
integers -
*MAX returns their
maximum)
↑LNIL
←
(OUFILE NEWCOMMENTS]
U.D.F.
OUFILE
←$
←(\(OUTN\NFILE(NEWCOMMENTS]
T
←PRINTCOMMENTS]
NIL
←HOST
SU-AI
←LISTFILE##
CLOSEF]
NEWCOMMENTS.;1
←LISTFILE(NEWCOMMENTS]
ISI-TENEX 1.31.6, ISI-TENEX EXEC 1.50.1
@FTP
USC-ISI FTP User process 1.17.0
*C SU-AI
Connection opened
Assuming 36-bit connections.
*LOG 1,LMM
< GREETINGS FROM STANFORD'S FTP SERVER.
< IMPLEMENTED COMMANDS: USER,TYPE,MODE,BYTE,RETR,STOR.
< IMAGE TYPE ONLY AT PRESENT
< REPORT PROBLEMS TO RALPH GORIN (REG).
*TE
*SE NEWCOMMENTS.;1 [Confirm]
to remote-file NEWCOMMENTS
< STOR COMMAND OK, PLEASE BEGIN TRANSFER
< DATA TRANSFER COMPLETE, FROM YOU TO US
2517. bytes transferred, run time = 1070. MS,
Elapsed time = 6640. MS, Rate = 13646. Baud.
*
*QUIT
@QUIT
NIL
←↑C
@DEL NEWCOMMENTS
@DIR,
@@RE
@@CH
@@SI
@@DA
@@
<MASINTER>
PGS WRITE
VVL6. ;2 7 5-APR-73
DRAW.TEM;2 6 5-APR-73
VVL. ;5 3 5-APR-73
IMDRAW.COM;10 39 5-APR-73
. ;12 22 5-APR-73
RSEMAX.;1 1 5-APR-73
RSE.ABS;1 3 5-APR-73
.REL;1 1 5-APR-73
.F40;2 1 5-APR-73
FINDNDS.;1 1 5-APR-73
ACCT. ;7 5 1-APR-73
ACCTDAT.APR;1 2 1-APR-73
EDITSTRUC2.;1 4 30-MAR-73
EDITSTRUC.;17 7 30-MAR-73
BGBMATCH.;11 8 28-MAR-73
OLDMESS.TXT;1 2 26-MAR-73
GENPAT.;16 3 25-MAR-73
MATCH. ;18 5 25-MAR-73
PARSE. ;19 3 25-MAR-73
COLLECT.;20 2 25-MAR-73
ANALPAT.;11 5 25-MAR-73
MATCH.WRITEUP;1 4 25-MAR-73
FILDIR.COM;3 2 25-MAR-73
. ;3 2 25-MAR-73
LISP.INITOLD;1 9 24-MAR-73
XGP. ;3 1 24-MAR-73
PRAD. ;8 2 24-MAR-73
ACYCLIC.FUDGE;2 1 17-MAR-73
URINE. ;14 3 14-MAR-73
URINESUPERATOMS.;2 1 14-MAR-73
COMMENT.;3 4 12-MAR-73
CL . ;12 4 12-MAR-73
XFORMS.;1 5 11-MAR-73
STRUCTURE.DOC;1 2 6-MAR-73
ACCTDAT.MAR;1 1 1-MAR-73
INIT.COM;5 1 15-FEB-73
. ;9 4 15-FEB-73
SAVEFIX.;1 1 15-FEB-73
DIALOG.;2 1 15-FEB-73
DICT.COM;9 4 7-FEB-73
. ;12 4 7-FEB-73
DRAWX.SAV;1 9 2-FEB-73
.F4 ;2 6 2-FEB-73
EXPLAIN.;9 6 31-JAN-73
CYCLIC.COM;1 13 13-JAN-73
TREE. ;9 2 13-JAN-73
TOTAL.COM;13 21 13-JAN-73
. ;29 15 13-JAN-73
TOP-LEVEL.;6 2 13-JAN-73
STRUCTURE.;10 4 13-JAN-73
STRGEN.SYS;32 259 13-JAN-73
. ;13 1 13-JAN-73
NEWGEN.;3 2 13-JAN-73
LABELER.;3 7 13-JAN-73
KLOOP. ;17 3 13-JAN-73
IO . ;9 2 13-JAN-73
GROUP.COM;4 6 13-JAN-73
. ;5 3 13-JAN-73
GENLISP.COM;7 4 13-JAN-73
. ;7 2 13-JAN-73
EXTRA.COM;1 1 13-JAN-73
. ;1 1 13-JAN-73
EXPLAIN.COM;7 10 13-JAN-73
EXPAND.COM;34 11 13-JAN-73
. ;71 4 13-JAN-73
EXAMPLE.COM;11 5 13-JAN-73
. ;14 2 13-JAN-73
DRAW.SAV;4 16 13-JAN-73
.COM;8 3 13-JAN-73
. ;10 2 13-JAN-73
CYCLIC.;9 8 13-JAN-73
CL .COM;8 7 13-JAN-73
@ARCHIVE ACCTDAT.MAR
@AR↑C
@TYP FOR ? ↑C
@CONT
]
NIL
←(CADR (CATALOG '(6]
NIL
←(TURNON]
($RINGS KLOOPEDRINGS RINGSKELETONS DAISIES CATALOG NOFV-RINGS RINGS
GENMOL PERMRADS STRUCTURESWITHATOMS ATTACHBIVALENTS ATTACHBIVS&LOOPS
ATTACHFVS MOLECULES)
←REDO CADR
(STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6 4) (CTENTRY
4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL) 1 3 1) (CTENTRY
1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
←FIX
EDIT
*P
(CADR (CATALOG &))
*MBD DRAWS
*OK
6
6 0 5 1 5
5 0 6 6 4
4 0 3 5 3
3 0 4 4 2
2 0 1 3 1
1 0 2 6 2
(6 A A A)
END*
END*
←REDO
6
6 0 5 1 5
5 0 6 6 4
4 0 3 5 3
3 0 4 4 2
2 0 1 3 1
1 0 2 6 2
(6 A A A)
END*
END*
←FIX
EDIT
*P
(DRAWS (CADR &))
*(1 DRAWS\S]
*OK
(6 A A A)
0
*=
* =
* =
0 0
= *
= *
= *
0 0
* =
* =
*=
0
CPU TIME: 1.01 ELAPSED TIME: 2.00
NO EXECUTION ERRORS DETECTED
EXIT.
↑C
NIL
←LOAD(IMDRAW.COM]
COMPILED ON 5-APR-73 15:01:40
FILE CREATED 5-APR-73 14:59:23
IMDRAWFNS
IMDRAWVARS
GC: 28
111, 623 FREE WORDS
(MIN REDEFINED)
(MAX REDEFINED)
GC: 1
π1446, 8102 FREE WORDS
INTERRUPTED BEFORE RATOM
(RATOM BROKEN)
:FILELST
(COMMENT NEWFILE.COM EXPLAIN EXPLAIN.COM KLOOP KLOOP.COM TREE TREE.COM
TOP-LEVEL TOP-LEVEL.COM STRUCTURE STRUCTURE.COM NEWGEN NEWGEN.COM
MORETOT LAYOUT LAYOUT.COM LABELER LABELER.COM IO IO.COM INIT INIT.COM
GROUP GROUP.COM GENLISP GENLISP.COM EXPAND EXPAND.COM EXAMPLE
EXAMPLE.COM DRAW DRAW.COM CYCLIC CYCLIC.COM CL CL.COM STRGEN STRGEN.COM
TOTAL TOTAL.COM)
:(SETQ FILELST]
(FILELST RESET)
NIL
:OK
RATOM
(LAYOUT REDEFINED)
(ANALIN REDEFINED)
(SORTLN REDEFINED)
(STRLNA REDEFINED)
(FINDNDS REDEFINED)
(STKNDS REDEFINED)
(SETND REDEFINED)
(RTLIN REDEFINED)
(CONCT REDEFINED)
(OUTNDS REDEFINED)
(CKINT REDEFINED)
(SLOPE REDEFINED)
(SRTLNA REDEFINED)
(DRAW REDEFINED)
(DRAWS REDEFINED)
(PRINRAD REDEFINED)
(PRINENTRY REDEFINED)
IMDRAW.COM;10
←REDO DRAW
NON-NUMERIC ARG
NIL
IN ELT
(BROKEN)
:BTV
ELT
Y1 0
Y NIL
X NIL
SRTLNA
Y1 0
Y NIL
X3 NIL
X2 NIL
X1 0
X NIL
L NIL
SORTLN
X1 NIL
X (NIL)
LAYOUT
CTAB NIL
ID NIL
STRUC (STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6
4) (CTENTRY 4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL)
1 3 1) (CTENTRY 1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
DRAWS
TITLE NIL
CTAB NIL
O NIL
RAD NIL
STRUC (STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6
4) (CTENTRY 4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL)
1 3 1) (CTENTRY 1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
DRAW
**TOP**
:BTV
ELT
Y1 0
Y NIL
X NIL
SRTLNA
Y1 0
Y NIL
X3 NIL
X2 NIL
X1 0
X NIL
L NIL
SORTLN
X1 NIL
X (NIL)
LAYOUT
CTAB NIL
ID NIL
STRUC (STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6
4) (CTENTRY 4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL)
1 3 1) (CTENTRY 1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
DRAWS
TITLE NIL
CTAB NIL
O NIL
RAD NIL
STRUC (STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6
4) (CTENTRY 4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL)
1 3 1) (CTENTRY 1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
DRAW
**TOP**
:
(BROKEN)
:ED##
GETD(DRAWS]
#557415
:(EDITE(COPY(CADR (CATALOG @(6\6\(\@'(6]
EDIT
*P
(STRUCTURE (& & & & & &) (6 A A A) 6 NIL)
*SW 1 2
*P
((& & & & & &) STRUCTURE (6 A A A) 6 NIL)
*UNDO
SW UNDONE.
*SW 1 3
*P
((6 A A A) (& & & & & &) STRUCTURE 6 NIL)
*RO 2
*P
((6 A A A) (& & & & & & STRUCTURE 6 NIL))
*UNDO
RO UNDONE.
*P
((6 A A A) (& & & & & &) STRUCTURE 6 NIL)
*RI 2
(RI 2) ?
*LO 2
*P
((6 A A A) (CTENTRY 6 & 5 1 5) (CTENTRY 5 & 6 6 4) (CTENTRY 4 & 3
5 3) (CTENTRY 3 & 4 4 2) (CTENTRY 2 & 1 3 1) (CTENTRY 1 & 2 6 2))
*3 P##
2 P
(CTENTRY 6 (NIL) 5 1 5)
*LP (1)
...NX
5 OCCURRENCES.
*0 PP
((6 A A A)
(6 (NIL)
5 1 5)
(5 (NIL)
6 6 4)
(4 (NIL)
3 5 3)
(3 (NIL)
4 4 2)
(2 (NIL)
1 3 1)
(1 (NIL)
2 6 2))
*R (NIL)
...C
*P
((6 A A A) (6 C 5 1 5) (5 C 6 6 4) (4 C 3 5 3) (3 C 4 4 2) (2 C 1
3 1) (1 C 2 6 2))
*(E(LAYOUT(##]
C
* =
* =
* =
* =
* =
C C
= *
= *
= *
= *
= *
C C
* =
* =
* =
* =
* =
C
(6 A A A)
NIL
*E LOADFNS((##
E (BREAK LAYOUT]
(LAYOUT)
*E (DRAWS (CADR (CATALOG @6]
U.B.A.
@6
E ?
*FIX
EDIT
*STOP
*E FIX
EDIT
*P
(DRAWS (CADR &))
*R @6 '(6]
*P
(DRAWS (CADR &))
*PP
(DRAWS (CADR (CATALOG ')))
*F '
*P
... ')
*(N (6]
*OK
(LAYOUT BROKEN)
:?=
X = (NIL)
:BTV
X (NIL)
LAYOUT
CTAB NIL
ID NIL
STRUC (STRUCTURE ((CTENTRY 6 (NIL) 5 1 5) (CTENTRY 5 (NIL) 6 6
4) (CTENTRY 4 (NIL) 3 5 3) (CTENTRY 3 (NIL) 4 4 2) (CTENTRY 2 (NIL)
1 3 1) (CTENTRY 1 (NIL) 2 6 2)) (6 A A A) 6 NIL)
DRAWS
;EVAL;
LISPXVALUE NIL
LISPXHIST (π SIDE (0 (((QUOTE (6))) ' (6))))
LISPXLINE NIL
LISPXLISTFLG T
HELPCLOCK -1391163
LISPXID *
LISPX
ERRORSET
LISPXVALUE NIL
LISPXHIST (((DRAWS (CADR (CATALOG (QUOTE (6)))))) * π HISTORY
(FIX) GROUP ((π SIDE (0 (((QUOTE (6))) ' (6))))) EDIT ((((DRAWS (CADR
(CATALOG (QUOTE (6))))))) NIL ((N (((QUOTE (6))) (CATALOG (QUOTE (6)))
(CADR (CATALOG (QUOTE (6)))) (DRAWS (CADR (CATALOG (QUOTE (6)))))
((DRAWS (CADR (CATALOG (QUOTE (6))))))) (((QUOTE (6))) ')) (R ((DRAWS
(CADR (CATALOG (QUOTE (6))))) ((DRAWS (CADR (CATALOG (QUOTE (6)))))))
(((QUOTE (6))) @6))) ((QUOTE (6))) (CATALOG (QUOTE (6))) (CADR (CATALOG
(QUOTE (6)))) (DRAWS (CADR (CATALOG (QUOTE (6))))) ((DRAWS (CADR (
CATALOG (QUOTE (6))))))) EDITHIST (NIL ((OK) * π) (((N (6))) * (N
(((QUOTE (6))) (CATALOG (QUOTE (6))) (CADR (CATALOG (QUOTE
(LAYOUT BROKEN)
:
(LAYOUT BROKEN)
:STOP
E ?
*P
((6 A A A) (6 C 5 1 5) (5 C 6 6 4) (4 C 3 5 3) (3 C 4 4 2) (2 C 1
3 1) (1 C 2 6 2))
*ST##
E PATSELECT
((6 16 18) (5 17 17) (4 17 16) (3 16 15) (2 15 16) (1 15 17))
*E SUBSYS(TELNET]
User Telnet 2.7 8-Sep-72. Type HELP<cr> for help.
#SAIL is complete.#
SU-AI (SAIL) PDP-10. Login by "LOG NET,GUE<return>". Report problems
with NCP/FTP to Ralph Gorin (REG), (415) 321-2300 x 4971. If this is
your first use of our system, please type "SEND HOS<return>" and tell
us who you are and why you're here. Please "TYPE SYSTEM.USE[NET,GUE]"
if you've never read it. Thanks.
#DISconnect
#QUIT 131073
*E KFORK(T]
NIL
*E (BREAK PATMATCH]
(PATMATCH)
*P##
P
((6 A A A) (6 C 5 1 5) (5 C 6 6 4) (4 C 3 5 3) (3 C 4 4 2) (2 C 1
3 1) (1 C 2 6 2))
*(LAYOUT(@@\@\@##]
(LAYOUT (##)) ?
*!E
(LAYOUT BROKEN)
:?=
X = ((6 A A A) (6 C 5 1 5) (5 C 6 6 4) (4 C 3 5 3) (3 C 4 4 2) (2
C 1 3 1) (1 C 2 6 2))
:EVAL
(PATMATCH BROKEN)
:PATSELECT
((6 16 18) (5 17 17) (4 17 16) (3 16 15) (2 15 16) (1 15 17))
:CURPAT
(HEX ((1 2 6) (2 3 1) (3 4 2) (4 5 3) (5 6 4) (6 5 1)) (1 (6) ((1
6 (1 6 5 4 3 2)))) ((6 1) (5 1) (4 1) (3 1) (2 1) (1 1)) (((5 . 6)
1) ((4 . 5) 1) ((3 . 4) 1) ((2 . 3) 1) ((1 . 2) 1) ((1 . 6) 1)) ((1
1 3) (2 2 2) (3 2 1) (4 1 0) (5 0 1) (6 0 2)))
:(SETQ CURPAT (SETQ PATSELECT NIL]
(PATSELECT RESET)
(CURPAT RESET)
NIL
:EVAL
PATMATCH EVALUATED
:CURPAT
(HEX ((1 2 6) (2 3 1) (3 4 2) (4 5 3) (5 6 4) (6 5 1)) (1 (6) ((1
6 (1 6 5 4 3 2)))) ((6 1) (5 1) (4 1) (3 1) (2 1) (1 1)) (((5 . 6)
1) ((4 . 5) 1) ((3 . 4) 1) ((2 . 3) 1) ((1 . 2) 1) ((1 . 6) 1)) ((1
1 3) (2 2 2) (3 2 1) (4 1 0) (5 0 1) (6 0 2)))
:PATSELECT
((6 16 18) (5 17 17) (4 17 16) (3 16 15) (2 15 16) (1 15 17))
:CALLS(PATMTCH]
=PATMATCH
((FACES REEDITFACE PATFACE FACEMATCH PATNODFC NODEPICK1 NODEPICK2
PATPOINTS PATPTS) (X1 X2 Y) (PATS CURPAT PATSELECT))
:(SETQ PATSELECT (SETQ CURPAT]
(CURPAT RESET)
(PATSELECT RESET)
NIL
:(B##
##
PP PPAT##
PP PATMATCH
(PATMATCH NOT PRINTABLE)
PATMATCH
:(BREAK FACES]
(FACES)
:EVAL
(FACES BROKEN)
:?=
π
:CURPAT
NIL
:CALLS(FACES]
((FACEF1 EDITFACE) (X FOR-VALUE MAX*X) (FACE FACENUM NMX))
:FACE
(1 (6) ((1 6 (1 2 3 4 5 6))))
:STOP
(PATMATCH BROKEN)
:(SETQ FACE NIL]
(FACE RESET)
NIL
:EVAL
(FACES BROKEN)
:FACE
NIL
:FACENM\MUM
1
:(SETQ FACENUM]
(FACENUM RESET)
NIL
:]
NIL
:NMX
6
:EVAL
FACES EVALUATED
:FACE
(1 (6) ((1 6 (1 2 3 4 5 6))))
:FACENUM
1
:↑C
@CONT
LOGOUT]
@DET
DETACHING JOB # 7