diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index 4055e41..88813ed 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -52285,6 +52285,196 @@ There are 8 parts of an htPage: \end{chunk} +\section{Constructor Page Menu} + +\defun{dbShowCons}{dbShowCons} +\calls{dbShowCons}{htpProperty} +\calls{dbShowCons}{pmTransFilter} +\calls{dbShowCons}{ifcar} +\calls{dbShowCons}{dbGetInputString} +\calls{dbShowCons}{bcErrorPage} +\calls{dbShowCons}{constructor?} +\calls{dbShowCons}{superMatch?} +\calls{dbShowCons}{downcase} +\calls{dbShowCons}{stringimage} +\calls{dbShowCons}{emptySearchPage} +\calls{dbShowCons}{htInitPageNoScroll} +\calls{dbShowCons}{htCopyProplist} +\calls{dbShowCons}{htpSetProperty} +\calls{dbShowCons}{dbShowCons} +\calls{dbShowCons}{member} +\calls{dbShowCons}{dbShowCons1} +\usesdollar{dbShowCons}{exposedOnlyIfTrue} +\begin{chunk}{defun dbShowCons} +(defun |dbShowCons| (&rest args &AUX options key htPage) + (let (cAlist filter abbrev? conname subject u htPage key options) + (declare (special |$exposedOnlyIfTrue|)) + (setq htPage (first args)) + (setq key (second args)) + (setq options (cddr args)) + (setq cAlist (|htpProperty| htPage '|cAlist|)) + (cond + ((eq key '|filter|) + (setq filter + (|pmTransFilter| (or (ifcar options) (|dbGetInputString| htPage)))) + (cond + ((and (consp filter) (eq (car filter) '|error|)) + (|bcErrorPage| filter)) + (t + (setq abbrev? (eq (|htpProperty| htPage '|exclusion|) '|abbrs|)) + (setq u + (loop for x in cAlist + when (progn + (setq conname (caar x)) + (setq subject (if abbrev? (|constructor?| conname) conname)) + (|superMatch?| filter (downcase (stringimage subject)))) + collect x)) + (cond + ((null u) + (|emptySearchPage| "constructor" filter)) + (t + (setq htPage (|htInitPageNoScroll| (|htCopyProplist| htPage))) + (|htpSetProperty| htPage '|cAlist| u) + (|dbShowCons| htPage (|htpProperty| htPage '|exclusion|))))))) + (t + (when (member key '(|exposureOn| |exposureOff|)) + (setq |$exposedOnlyIfTrue| (eq key '|exposureOn|)) + (setq key (|htpProperty| htPage '|exclusion|))) + (|dbShowCons1| htPage cAlist key))))) + +\end{chunk} + +\defun{conPageChoose}{conPageChoose} +\calls{conPageChoose}{getConstructorForm} +\calls{conPageChoose}{dbShowCons1} +\begin{chunk}{defun conPageChoose} +(defun |conPageChoose| (conname) + (let (cAlist) + (setq cAlist (list (cons (|getConstructorForm| conname) t))) + (|dbShowCons1| nil cAlist '|names|))) + +\end{chunk} + +\defun{dbShowCons1}{dbShowCons1} +\calls{dbShowCons1}{remdup} +\calls{dbShowCons1}{isExposedConstructor} +\calls{dbShowCons1}{opOf} +\calls{dbShowCons1}{conPage} +\calls{dbShowCons1}{htpProperty} +\calls{dbShowCons1}{union} +\calls{dbShowCons1}{dbConstructorKind} +\calls{dbShowCons1}{htCopyProplist} +\calls{dbShowCons1}{htInitPageNoScroll} +\calls{dbShowCons1}{dbConsHeading} +\calls{dbShowCons1}{htSayStandard} +\calls{dbShowCons1}{htpSetProperty} +\calls{dbShowCons1}{bcNameConTable} +\calls{dbShowCons1}{bcAbbTable} +\calls{dbShowCons1}{getCDTEntry} +\calls{dbShowCons1}{getdatabase} +\calls{dbShowCons1}{bcUnixTable} +\calls{dbShowCons1}{listSort} +\calls{dbShowCons1}{function} +\calls{dbShowCons1}{qlesseqp} +\calls{dbShowCons1}{dbShowConsDoc} +\calls{dbShowCons1}{isExposedConstructor} +\calls{dbShowCons1}{dbShowConditions} +\calls{dbShowCons1}{bcConTable} +\calls{dbShowCons1}{assocleft} +\calls{dbShowCons1}{dbShowConsKinds} +\calls{dbShowCons1}{dbConsExposureMessage} +\calls{dbShowCons1}{dbPresentCons} +\calls{dbShowCons1}{htShowPageNoScroll} +\usesdollar{dbShowCons1}{conformsAreDomains} +\usesdollar{dbShowCons1}{exposedOnlyIfTrue} +\begin{chunk}{defun dbShowCons1} +(defun |dbShowCons1| (htPage cAlist key) + (let (|$conformsAreDomains| item conlist kinds a kind + proplist page u fn y flist result) + (declare (special |$conformsAreDomains| |$exposedOnlyIfTrue|)) + (setq conlist + (remdup + (dolist (x cAlist result) + (push + (if |$exposedOnlyIfTrue| + (|isExposedConstructor| (|opOf| (car x))) + (car x)) + result)))) + (cond + ((and (consp conlist) (eq (qcdr conlist) nil)) + (|conPage| + (if (and htPage (|htpProperty| htPage '|domname|)) + (car conlist) + (|opOf| (car conlist))))) + (t + (setq conlist (loop for x in conlist collect (|opOf| x))) + (setq kinds + (apply #'|union| + (loop for x in conlist collect (|dbConstructorKind| x)))) + (setq kind + (if (and (consp kinds) (eq (qcdr kinds) nil)) + (qcar kinds) + '|constructor|)) + (setq proplist (when htPage (|htCopyProplist| htPage))) + (setq page + (|htInitPageNoScroll| proplist + (|dbConsHeading| htPage conlist key kind))) + (if (setq u (|htpProperty| page '|specialMessage|)) + (apply (car u) (cdr u))) + (|htSayStandard| "\\beginscroll ") + (|htpSetProperty| page '|cAlist| cAlist) + (setq |$conformsAreDomains| (|htpProperty| page '|domname|)) + (cond + ((eq key '|names|) (|bcNameConTable| conlist)) + ((eq key '|abbrs|) + (|bcAbbTable| + (loop for con in conlist collect (|getCDTEntry| con t)))) + ((eq key '|files|) + (setq flist + (for con in conlist collect (getdatabase con 'sourcefile))) + (|bcUnixTable| + (|listSort| (|function| glesseqp) (remdup flist)))) + ((eq key '|documentation|) (|dbShowConsDoc| page conlist)) + (t + (when |$exposedOnlyIfTrue| + (setq cAlist + (loop for x in cAlist + when (|isExposedConstructor| (|opOf| (car x))) + collect x))) + (cond + ((eq key '|conditions|) (|dbShowConditions| page cAlist kind)) + ((eq key '|parameters|) + (|bcConTable| (remdup (assocleft cAlist)))) + ((eq key '|kinds|) (|dbShowConsKinds| cAlist))))) + (|dbConsExposureMessage|) + (|htSayStandard| '|\\endscroll |) + (|dbPresentCons| page kind key) + (|htShowPageNoScroll|))))) + +\end{chunk} + +\defun{dbConsExposureMessage}{dbConsExposureMessage} +\calls{dbConsExposureMessage}{htSay} +\usesdollar{dbConsExposureMessage}{atLeastOneUnexposed} +\begin{chunk}{defun dbConsExposureMessage} +(defun |dbConsExposureMessage| () + (declare (special |$atLeastOneUnexposed|)) + (when |$atLeastOneUnexposed| + (|htSay| "\\newline{}-------------\\newline{}{\\em *} = unexposed"))) + +\end{chunk} + +\defun{dbShowConsKindsFilter}{dbShowConsKindsFilter} +\calls{dbShowConsKindsFilter}{htpSetProperty} +\calls{dbShowConsKindsFilter}{dbShowCons} +\calls{dbShowConsKindsFilter}{htpProperty} +\begin{chunk}{defun dbShowConsKindsFilter} +(defun |dbShowConsKindsFilter| (htPage args) + (|htpSetProperty| htPage '|cAlist| (second args)) + (|dbShowCons| htPage (|htpProperty| htPage '|exclusion|))) + +\end{chunk} + \chapter{The Interpreter} \begin{chunk}{Interpreter} (setq *print-array* nil) @@ -52873,6 +53063,7 @@ There are 8 parts of an htPage: \getchunk{defun conOpPage} \getchunk{defun conOpPage1} \getchunk{defun conPage} +\getchunk{defun conPageChoose} \getchunk{defun conPageConEntry} \getchunk{defun conPageFastPath} \getchunk{defun constoken} @@ -52887,6 +53078,7 @@ There are 8 parts of an htPage: \getchunk{defun dbAddChainDomain} \getchunk{defun dbAddDocTable} \getchunk{defun dbCompositeWithMap} +\getchunk{defun dbConsExposureMessage} \getchunk{defun dbConstructorDoc} \getchunk{defun dbConstructorDoc,hn} \getchunk{defun dbConstructorDoc,gn} @@ -52897,6 +53089,9 @@ There are 8 parts of an htPage: \getchunk{defun dbGetDocTable,hn} \getchunk{defun dbNonEmptyPattern} \getchunk{defun dbSearchOrder} +\getchunk{defun dbShowCons} +\getchunk{defun dbShowCons1} +\getchunk{defun dbShowConsKindsFilter} \getchunk{defun dbSubConform} \getchunk{defun decideHowMuch} \getchunk{defun defaultTargetFE} diff --git a/changelog b/changelog index 2470b64..50e5235 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,6 @@ +20130621 tpd src/axiom-website/patches.html 20130621.01.tpd.patch +20130621 tpd src/interp/br-con.lisp move code to bookvol5 +20130621 tpd books/bookvol5 move code from br-con.lisp 20130618 tpd src/axiom-website/patches.html 20130618.01.tpd.patch 20130618 tpd src/interp/br-con.lisp move code to bookvol5 20130618 tpd books/bookvol5 move code from br-con.lisp diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index b1c4321..ea71e73 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -4212,6 +4212,8 @@ books/bookvol8.1 add crc test section 2.8, 2.9 books/bookvol5 move code from br-con.lisp 20130618.01.tpd.patch books/bookvol5 move code from br-con.lisp +20130621.01.tpd.patch +books/bookvol5 move code from br-con.lisp diff --git a/src/interp/br-con.lisp.pamphlet b/src/interp/br-con.lisp.pamphlet index 995f5c0..7bbc6f7 100644 --- a/src/interp/br-con.lisp.pamphlet +++ b/src/interp/br-con.lisp.pamphlet @@ -12,390 +12,6 @@ \begin{chunk}{*} (IN-PACKAGE "BOOT" ) -;--======================================================================= -;-- Constructor Page Menu -;--======================================================================= -;dbShowCons(htPage,key,:options) == -; cAlist := htpProperty(htPage,'cAlist) -; key = 'filter => -; --if $saturn, IFCAR options is the filter string -; filter := pmTransFilter(IFCAR options or dbGetInputString htPage) -; filter is ['error,:.] => bcErrorPage filter -; abbrev? := htpProperty(htPage,'exclusion) = 'abbrs -; u := [x for x in cAlist | test] where test == -; conname := CAAR x -; subject := (abbrev? => constructor? conname; conname) -; superMatch?(filter,DOWNCASE STRINGIMAGE subject) -; null u => emptySearchPage('"constructor",filter) -; htPage := htInitPageNoScroll(htCopyProplist htPage) -; htpSetProperty(htPage,'cAlist,u) -; dbShowCons(htPage,htpProperty(htPage,'exclusion)) -; if MEMQ(key,'(exposureOn exposureOff)) then -; $exposedOnlyIfTrue := -; key = 'exposureOn => 'T -; NIL -; key := htpProperty(htPage,'exclusion) -; dbShowCons1(htPage,cAlist,key) - -(DEFUN |dbShowCons| (&REST G167545 &AUX |options| |key| |htPage|) - (DSETQ (|htPage| |key| . |options|) G167545) - (PROG (|cAlist| |filter| |abbrev?| |conname| |subject| |u|) - (declare (special |$exposedOnlyIfTrue|)) - (RETURN - (SEQ (PROGN - (SPADLET |cAlist| (|htpProperty| |htPage| '|cAlist|)) - (COND - ((BOOT-EQUAL |key| '|filter|) - (SPADLET |filter| - (|pmTransFilter| - (OR (IFCAR |options|) - (|dbGetInputString| |htPage|)))) - (COND - ((AND (CONSP |filter|) (EQ (QCAR |filter|) '|error|)) - (|bcErrorPage| |filter|)) - ('T - (SPADLET |abbrev?| - (BOOT-EQUAL - (|htpProperty| |htPage| '|exclusion|) - '|abbrs|)) - (SPADLET |u| - (PROG (G167520) - (SPADLET G167520 NIL) - (RETURN - (DO ((G167526 |cAlist| - (CDR G167526)) - (|x| NIL)) - ((OR (ATOM G167526) - (PROGN - (SETQ |x| (CAR G167526)) - NIL)) - (NREVERSE0 G167520)) - (SEQ (EXIT - (COND - ((PROGN - (SPADLET |conname| - (CAAR |x|)) - (SPADLET |subject| - (COND - (|abbrev?| - (|constructor?| - |conname|)) - ('T |conname|))) - (|superMatch?| |filter| - (DOWNCASE - (STRINGIMAGE |subject|)))) - (SETQ G167520 - (CONS |x| G167520)))))))))) - (COND - ((NULL |u|) - (|emptySearchPage| "constructor" - |filter|)) - ('T - (SPADLET |htPage| - (|htInitPageNoScroll| - (|htCopyProplist| |htPage|))) - (|htpSetProperty| |htPage| '|cAlist| |u|) - (|dbShowCons| |htPage| - (|htpProperty| |htPage| '|exclusion|))))))) - ('T - (COND - ((member |key| '(|exposureOn| |exposureOff|)) - (SPADLET |$exposedOnlyIfTrue| - (COND - ((BOOT-EQUAL |key| '|exposureOn|) 'T) - ('T NIL))) - (SPADLET |key| - (|htpProperty| |htPage| '|exclusion|)))) - (|dbShowCons1| |htPage| |cAlist| |key|)))))))) - -;conPageChoose conname == -; cAlist := [[getConstructorForm conname,:true]] -; dbShowCons1(nil,cAlist,'names) - -(DEFUN |conPageChoose| (|conname|) - (PROG (|cAlist|) - (RETURN - (PROGN - (SPADLET |cAlist| - (CONS (CONS (|getConstructorForm| |conname|) 'T) NIL)) - (|dbShowCons1| NIL |cAlist| '|names|))))) - -;dbShowCons1(htPage,cAlist,key) == -; conlist := REMDUP [item for x in cAlist | pred] where -; pred == -; item := CAR x -; $exposedOnlyIfTrue => isExposedConstructor opOf item -; item -;--$searchFirstTime and (conlist is [.]) => conPage first conlist -;--$searchFirstTime := false -; conlist is [.] => conPage -; htPage and htpProperty(htPage,'domname) => first conlist -; opOf first conlist -; conlist := [opOf x for x in conlist] -; kinds := "UNION"/[dbConstructorKind x for x in conlist] -; kind := -; kinds is [a] => a -; 'constructor -; proplist := -; htPage => htCopyProplist htPage -; nil -; page := htInitPageNoScroll(proplist,dbConsHeading(htPage,conlist,key,kind)) -; if u := htpProperty(page,'specialMessage) then APPLY(first u,rest u) -; htSayStandard('"\beginscroll ") -; htpSetProperty(page,'cAlist,cAlist) -; $conformsAreDomains: local := htpProperty(page,'domname) -; do -; --key = 'catfilter => dbShowCatFilter(page,key) -; key = 'names => bcNameConTable conlist -; key = 'abbrs => -; bcAbbTable [getCDTEntry(con,true) for con in conlist] -; key = 'files => -; flist := -; [y for con in conlist | -; y := (fn := GETDATABASE(con,'SOURCEFILE))] -; bcUnixTable(listSort(function GLESSEQP,REMDUP flist)) -; key = 'documentation => dbShowConsDoc(page,conlist) -; if $exposedOnlyIfTrue then -; cAlist := [x for x in cAlist | isExposedConstructor opOf CAR x] -; key = 'conditions => dbShowConditions(page,cAlist,kind) -; key = 'parameters => bcConTable REMDUP ASSOCLEFT cAlist -; key = 'kinds => dbShowConsKinds cAlist -; dbConsExposureMessage() -; htSayStandard("\endscroll ") -; dbPresentCons(page,kind,key) -; htShowPageNoScroll() - -(DEFUN |dbShowCons1| (|htPage| |cAlist| |key|) - (PROG (|$conformsAreDomains| |item| |conlist| |kinds| |a| |kind| - |proplist| |page| |u| |fn| |y| |flist|) - (DECLARE (SPECIAL |$conformsAreDomains| |$exposedOnlyIfTrue|)) - (RETURN - (SEQ (PROGN - (SPADLET |conlist| - (REMDUP (PROG (G167564) - (SPADLET G167564 NIL) - (RETURN - (DO ((G167570 |cAlist| - (CDR G167570)) - (|x| NIL)) - ((OR (ATOM G167570) - (PROGN - (SETQ |x| (CAR G167570)) - NIL)) - (NREVERSE0 G167564)) - (SEQ - (EXIT - (COND - ((PROGN - (SPADLET |item| (CAR |x|)) - (COND - (|$exposedOnlyIfTrue| - (|isExposedConstructor| - (|opOf| |item|))) - ('T |item|))) - (SETQ G167564 - (CONS |item| G167564))))))))))) - (COND - ((AND (CONSP |conlist|) (EQ (QCDR |conlist|) NIL)) - (|conPage| - (COND - ((AND |htPage| - (|htpProperty| |htPage| '|domname|)) - (CAR |conlist|)) - ('T (|opOf| (CAR |conlist|)))))) - ('T - (SPADLET |conlist| - (PROG (G167580) - (SPADLET G167580 NIL) - (RETURN - (DO ((G167585 |conlist| (CDR G167585)) - (|x| NIL)) - ((OR (ATOM G167585) - (PROGN - (SETQ |x| (CAR G167585)) - NIL)) - (NREVERSE0 G167580)) - (SEQ (EXIT - (SETQ G167580 - (CONS (|opOf| |x|) G167580)))))))) - (SPADLET |kinds| - (PROG (G167591) - (SPADLET G167591 NIL) - (RETURN - (DO ((G167596 |conlist| (CDR G167596)) - (|x| NIL)) - ((OR (ATOM G167596) - (PROGN - (SETQ |x| (CAR G167596)) - NIL)) - G167591) - (SEQ (EXIT - (SETQ G167591 - (|union| G167591 - (|dbConstructorKind| |x|))))))))) - (SPADLET |kind| - (COND - ((AND (CONSP |kinds|) - (EQ (QCDR |kinds|) NIL) - (PROGN - (SPADLET |a| (QCAR |kinds|)) - 'T)) - |a|) - ('T '|constructor|))) - (SPADLET |proplist| - (COND - (|htPage| (|htCopyProplist| |htPage|)) - ('T NIL))) - (SPADLET |page| - (|htInitPageNoScroll| |proplist| - (|dbConsHeading| |htPage| |conlist| |key| - |kind|))) - (COND - ((SPADLET |u| - (|htpProperty| |page| '|specialMessage|)) - (APPLY (CAR |u|) (CDR |u|)))) - (|htSayStandard| "\\beginscroll ") - (|htpSetProperty| |page| '|cAlist| |cAlist|) - (SPADLET |$conformsAreDomains| - (|htpProperty| |page| '|domname|)) - (|do| (COND - ((BOOT-EQUAL |key| '|names|) - (|bcNameConTable| |conlist|)) - ((BOOT-EQUAL |key| '|abbrs|) - (|bcAbbTable| - (PROG (G167606) - (SPADLET G167606 NIL) - (RETURN - (DO ((G167611 |conlist| - (CDR G167611)) - (|con| NIL)) - ((OR (ATOM G167611) - (PROGN - (SETQ |con| (CAR G167611)) - NIL)) - (NREVERSE0 G167606)) - (SEQ - (EXIT - (SETQ G167606 - (CONS (|getCDTEntry| |con| 'T) - G167606))))))))) - ((BOOT-EQUAL |key| '|files|) - (SPADLET |flist| - (PROG (G167622) - (SPADLET G167622 NIL) - (RETURN - (DO - ((G167628 |conlist| - (CDR G167628)) - (|con| NIL)) - ((OR (ATOM G167628) - (PROGN - (SETQ |con| (CAR G167628)) - NIL)) - (NREVERSE0 G167622)) - (SEQ - (EXIT - (COND - ((SPADLET |y| - (SPADLET |fn| - (GETDATABASE |con| - 'SOURCEFILE))) - (SETQ G167622 - (CONS |y| G167622)))))))))) - (|bcUnixTable| - (|listSort| (|function| GLESSEQP) - (REMDUP |flist|)))) - ((BOOT-EQUAL |key| '|documentation|) - (|dbShowConsDoc| |page| |conlist|)) - ('T - (COND - (|$exposedOnlyIfTrue| - (SPADLET |cAlist| - (PROG (G167639) - (SPADLET G167639 NIL) - (RETURN - (DO - ((G167645 |cAlist| - (CDR G167645)) - (|x| NIL)) - ((OR (ATOM G167645) - (PROGN - (SETQ |x| - (CAR G167645)) - NIL)) - (NREVERSE0 G167639)) - (SEQ - (EXIT - (COND - ((|isExposedConstructor| - (|opOf| (CAR |x|))) - (SETQ G167639 - (CONS |x| - G167639)))))))))))) - (COND - ((BOOT-EQUAL |key| '|conditions|) - (|dbShowConditions| |page| |cAlist| |kind|)) - ((BOOT-EQUAL |key| '|parameters|) - (|bcConTable| - (REMDUP (ASSOCLEFT |cAlist|)))) - ((BOOT-EQUAL |key| '|kinds|) - (|dbShowConsKinds| |cAlist|)))))) - (|dbConsExposureMessage|) - (|htSayStandard| '|\\endscroll |) - (|dbPresentCons| |page| |kind| |key|) - (|htShowPageNoScroll|)))))))) - -;dbConsExposureMessage() == -; $atLeastOneUnexposed => -; htSay '"\newline{}-------------\newline{}{\em *} = unexposed" - -(DEFUN |dbConsExposureMessage| () - (declare (special |$atLeastOneUnexposed|)) - (SEQ (COND - (|$atLeastOneUnexposed| - (EXIT (|htSay| "\\newline{}-------------\\newline{}{\\em *} = unexposed")))))) - -;-- DUPLICATE DEF - ALSO in br-saturn.boot -;-- dbShowConsKinds cAlist == -;-- ---------> !OBSELETE! <------------- -;-- cats := doms := paks := defs := nil -;-- for x in cAlist repeat -;-- op := CAAR x -;-- kind := dbConstructorKind op -;-- kind = 'category => cats := [x,:cats] -;-- kind = 'domain => doms := [x,:doms] -;-- kind = 'package => paks:= [x,:paks] -;-- defs := [x,:defs] -;-- lists := [NREVERSE cats,NREVERSE doms,NREVERSE paks,NREVERSE defs] -;-- htBeginMenu(2) -;-- htSayStandard '"\indent{1}" -;-- kinds := +/[1 for x in lists | #x > 0] -;-- for kind in '("category" "domain" "package" "default package") for x in lists | #x > 0 repeat -;-- htSay('"\item") -;-- if kinds = 1 then htSay menuButton() else -;-- htMakePage [['bcLinks,[menuButton(),'"",'dbShowConsKindsFilter,[kind,x]]]] -;-- htSayStandard '"\tab{1}" -;-- htSay '"{\em " -;-- htSay (c := #x) -;-- htSay '" " -;-- htSay (c > 1 => pluralize kind; kind) -;-- htSay '":}" -;-- bcConTable REMDUP [CAAR y for y in x] -;-- htEndMenu(2) -;-- htSay '"\indent{0}" -;dbShowConsKindsFilter(htPage,[kind,cAlist]) == -; htpSetProperty(htPage,'cAlist,cAlist) -; dbShowCons(htPage,htpProperty(htPage,'exclusion)) - -(DEFUN |dbShowConsKindsFilter| (|htPage| G167680) - (PROG (|kind| |cAlist|) - (RETURN - (PROGN - (SPADLET |kind| (CAR G167680)) - (SPADLET |cAlist| (CADR G167680)) - (|htpSetProperty| |htPage| '|cAlist| |cAlist|) - (|dbShowCons| |htPage| (|htpProperty| |htPage| '|exclusion|)))))) - ;dbShowConsDoc(htPage,conlist) == ; null rest conlist => dbShowConsDoc1(htPage,getConstructorForm opOf first conlist,nil) ; cAlist := htpProperty(htPage,'cAlist)