From 69590a74112148403f3ac904710cc20cee8a8d79 Mon Sep 17 00:00:00 2001 From: Bert Burgemeister Date: Mon, 3 Aug 2009 20:42:46 +0200 Subject: [PATCH] Added a few lines on lambda list keywords and some minor corrections --- Makefile | 10 ------ clqr-clos.tex | 18 +++++----- clqr-control-structure.tex | 90 ++++++++++++++++++++++++++++++---------------- commit-message | 4 ++- 4 files changed, 71 insertions(+), 51 deletions(-) diff --git a/Makefile b/Makefile index f9d7724..6a17fea 100644 --- a/Makefile +++ b/Makefile @@ -28,11 +28,9 @@ MV = mv --force --verbose MAKE = make GZIP = gzip GIT_REVISION = git-describe | sed 's/\(.*-.*\)-.*/\1/' -#GIT_REVISION = git-log --pretty=oneline | wc -l GIT_ARCHIVE = git-archive --format=tar --prefix=$(CLQR)/ HEAD | $(GZIP) GIT_COMMIT = git-commit -a DATE = git-log HEAD^..HEAD --date=short | awk '/Date:/{print $$2}' | tr -d '\n\\' -#DATE = date -I | tr -d '\n\\' RSYNC = rsync -va SSH = ssh @@ -50,13 +48,9 @@ letter-booklets: $(CLQR)-letter-booklet-all.pdf $(CLQR)-letter-booklet-four.pdf a4-booklets: $(CLQR)-a4-booklet-all.pdf $(CLQR)-a4-booklet-four.pdf - - $(CLQR)-%-consec.pdf: $(CLQR)-%-consec.ps $(PS2PDF) $< $@ $(SEND-TO-LOG) - - $(CLQR)-letter-booklet-%.pdf: $(CLQR)-letter-booklet-%.ps $(PS2PDF) -sPAPERSIZE=letter $< $@ $(SEND-TO-LOG) @@ -75,13 +69,9 @@ $(CLQR)-%-signature-all.ps: $(CLQR)-%-consec.ps $(CLQR)-%-signature-four.ps: $(CLQR)-%-consec.ps $(PSBOOK-FOUR) $< $@ $(SEND-TO-LOG) - - $(CLQR)-%-consec.ps: $(CLQR)-%.dvi color-colorful.flag $(DVIPS) -o $@ $< $(SEND-TO-LOG) - - $(CLQR)-%.dvi: $(CLQR).tex $(CLQR)-*.tex paper-%.flag DATE.tex revision-number $(TOUCH) $(CLQR).ind $(SEND-TO-LOG) $(LATEX) $(CLQR).tex $(SEND-TO-LOG) diff --git a/clqr-clos.tex b/clqr-clos.tex index ef46a28..a3c87ef 100644 --- a/clqr-clos.tex +++ b/clqr-clos.tex @@ -185,13 +185,13 @@ \IT{(\MC*{DEFGENERIC} \xorGOO{\VAR{foo}\\ (\kwd{setf} \VAR{ foo})}{\}} (\OPn{\VAR{required-var}} - \OP{\kwd*{\&optional} \xorGOO{\VAR{var}\\ + \OP{\kwd{\&optional} \xorGOO{\VAR{var}\\ (\VAR{var})}{\}^{\!\!*}}} - \OP{\kwd*{\&rest} \VAR{var}} - \OP{\kwd*{\&key} \xorGOO{% + \OP{\kwd{\&rest} \VAR{var}} + \OP{\kwd{\&key} \xorGOO{% \VAR{var}\\ (\VAR{var}\XOR(\kwd{:}\VAR{key } - \VAR{var}))}{\}^{\!\!*}} \Op{\kwd*{\&allow-other-keys}}}) + \VAR{var}))}{\}^{\!\!*}} \Op{\kwd{\&allow-other-keys}}}) \orGOO{% (\kwd{:argument-precedence-order}\RP{\VAR{ required-var}})\\ (\kwd{declare }\RP{(\kwd{optimize}\OPn{\VAR{ arg}})})\\ @@ -236,17 +236,17 @@ (\xorGOO{\VAR{var}\\ (\VAR{spec-var } \xorGOO{\VAR{class}\\ (\kwd{eql} \VAR{ bar})}{\}})}{\}^{\!\!*}} - \OP{\kwd*{\&optional} \xorGOO{\VAR{var}\\ + \OP{\kwd{\&optional} \xorGOO{\VAR{var}\\ (\VAR{var } \OP{\VAR{init } \Op{\VAR{supplied-p}}})}{\}^{\!\!*}}} - \Op{\kwd*{\&rest} \VAR{var}} - \OP{\kwd*{\&key} \xorGOO{\VAR{var}\\ + \Op{\kwd{\&rest} \VAR{var}} + \OP{\kwd{\&key} \xorGOO{\VAR{var}\\ (\xorGOO{\VAR{var}\\ (\kwd{:}\VAR{key } \VAR{var})}{\}} \OP{\VAR{init }\Op{\VAR{supplied-p}}})}{\}^{\!\!*}} - \Op{\kwd*{\&allow-other-keys}}} - \OP{\kwd*{\&aux }\xorGOO{\VAR{var}\\ + \Op{\kwd{\&allow-other-keys}}} + \OP{\kwd{\&aux }\xorGOO{\VAR{var}\\ (\VAR{var } \Op{\VAR{init}})}{\}^{\!\!*}}}) \orGOO{\OPn{(\kwd{declare } \OPn{\NEV{\VAR{decl}}})}\\ \NEV{\VAR{doc}}}{\}} diff --git a/clqr-control-structure.tex b/clqr-control-structure.tex index f691a54..8f388fb 100644 --- a/clqr-control-structure.tex +++ b/clqr-control-structure.tex @@ -183,28 +183,28 @@ Below, ordinary lambda list (\OPn{\VAR{ord-$\lambda$}}) has the form\\ % \VAR{var} referenced from DEFSTRUCT (\OPn{\VAR{var}} - \OP{\kwd*{\&optional} \xorGOO{% + \OP{\kwd{\&optional} \xorGOO{% \VAR{var}\\ - (\VAR{var } \OP{\VAR{init}\DF{\NIL}\text{ } \Op{\VAR{supplied-p}}})}{\}}} + (\VAR{var } \OP{\VAR{init}\DF{\NIL}\text{ } \Op{\VAR{supplied-p}}})}{\}^{\!\!*}}} \penalty-5 - \Op{\kwd*{\&rest} \VAR{var}} + \Op{\kwd{\&rest} \VAR{var}} \penalty-5 - \OP{\kwd*{\&key} \xorGOO{% + \OP{\kwd{\&key} \xorGOO{% \VAR{var}\\ (\xorGOO{% \VAR{var}\\ (\kwd{:}\VAR{key } \VAR{var})}{\}} \text{ }\OP{\VAR{init}\DF{\NIL}\text{ }\Op{\VAR{supplied-p}}})}{\}^{\!\!*}} \penalty-5 - \Op{\kwd*{\&allow-other-keys}}} + \Op{\kwd{\&allow-other-keys}}} \penalty-5 - \OP{\kwd*{\&aux} \xorGOO{% + \OP{\kwd{\&aux} \xorGOO{% \VAR{var}\\ - (\VAR{var } \Op{\VAR{init}\DF{\NIL}})}{\}}}).\\ + (\VAR{var } \Op{\VAR{init}\DF{\NIL}})}{\}^{\!\!*}}}). +\end{flushleft} \VAR{supplied-p} is \T\ if there is a corresponding argument. \VAR{init} forms can refer to any \VAR{init} and \VAR{supplied-p} to their left. -\end{flushleft} \begin{LIST}{1cm} @@ -346,7 +346,7 @@ Below, macro lambda list (\OPn{\VAR{macro-$\lambda$}}) has the form of either \penalty-5 - (\Op{\kwd*{\&whole} \VAR{var}} + (\Op{\kwd{\&whole} \VAR{var}} \penalty-5 \Op{\VAR{E}} \penalty-5 @@ -356,7 +356,7 @@ \penalty-5 \Op{\VAR{E}} \penalty-5 - \Op{\kwd*{\&optional} + \Op{\kwd{\&optional} \xorGOO{% \VAR{var}\\ (\xorGOO{% @@ -368,15 +368,15 @@ \penalty-5 \Op{% \xorGOO{% - \kwd*{\&rest}\\ - \kwd*{\&body}}{\}} + \kwd{\&rest}\\ + \kwd{\&body}}{\}} \xorGOO{% \VAR{var}\\ (\OPn{\VAR{macro-$\lambda$}})}{\}}} \penalty-5 \Op{\VAR{E}} \penalty-5 - \OP{\kwd*{\&key} + \OP{\kwd{\&key} \xorGOO{% \VAR{var}\\ (\xorGOO{% @@ -386,9 +386,9 @@ (\OPn{\VAR{macro-$\lambda$}})}{\}})}{\}} \text{ }\OP{\VAR{init}\DF{\NIL}\text{ } \Op{\VAR{supplied-p}}})}{\}^{\!\!*}} \Op{\VAR{E}} - \Op{\kwd*{\&allow-other-keys}}} + \Op{\kwd{\&allow-other-keys}}} \penalty-5 - \Op{\kwd*{\&aux} + \Op{\kwd{\&aux} \xorGOO{% \VAR{var}\\ (\VAR{var } \Op{\VAR{init}\DF{\NIL}})}{\}^{\!\!*}}} @@ -397,7 +397,7 @@ \\ or \penalty-5 - (\Op{\kwd*{\&whole} + (\Op{\kwd{\&whole} \VAR{var}} \penalty-5 \Op{\VAR{E}} @@ -408,7 +408,7 @@ \penalty-5 \Op{\VAR{E}} \penalty-5 - \Op{\kwd*{\&optional} + \Op{\kwd{\&optional} \xorGOO{% \VAR{var}\\ (\xorGOO{% @@ -421,10 +421,10 @@ \VAR{var}). \penalty-5 \end{flushleft} - One toplevel \Op{\VAR{E}} may be replaced by \kwd*{\&environment} - \VAR{var} where \VAR{var} carries the lexical compilation - environment. \VAR{supplied-p} is \T\ if there is a corresponding - argument. + One toplevel \Op{\VAR{E}} may be replaced by \kwd{\&environment} + \VAR{var}. \VAR{supplied-p} is \T\ if there is a corresponding + argument. \VAR{init} forms can refer to any \VAR{init} and + \VAR{supplied-p} to their left. \begin{LIST}{1cm} @@ -476,22 +476,22 @@ where defsetf lambda list (\OPn{\VAR{setf-$\lambda$}}) has the form \penalty-5 (\OPn{\VAR{var}} - \OP{\kwd*{\&optional} \xorGOO{% + \OP{\kwd{\&optional} \xorGOO{% \VAR{var}\\ - (\VAR{var } \OP{\VAR{init}\DF{\NIL}\text{ } \Op{\VAR{supplied-p}}})}{\}}} + (\VAR{var } \OP{\VAR{init}\DF{\NIL}\text{ } \Op{\VAR{supplied-p}}})}{\}^{\!\!*}}} \penalty-5 - \Op{\kwd*{\&rest} \VAR{var}} + \Op{\kwd{\&rest} \VAR{var}} \penalty-5 - \OP{\kwd*{\&key} \xorGOO{% + \OP{\kwd{\&key} \xorGOO{% \VAR{var}\\ (\xorGOO{% \VAR{var}\\ (\kwd{:}\VAR{key } \VAR{var})}{\}} \text{ }\OP{\VAR{init}\DF{\NIL}\text{ }\Op{\VAR{supplied-p}}})}{\}^{\!\!*}} \penalty-5 - \Op{\kwd*{\&allow-other-keys}}} + \Op{\kwd{\&allow-other-keys}}} \penalty-5 - \OP{\kwd*{\&environment} \VAR{var}}% + \OP{\kwd{\&environment} \VAR{var}}% ) } { @@ -535,11 +535,11 @@ } \IT{(\MC*{DEFINE-MODIFY-MACRO} \VAR{foo} - (\OP{\kwd*{\&optional} \xorGOO{% + (\OP{\kwd{\&optional} \xorGOO{% \VAR{var}\\ (\VAR{var } \OP{\VAR{init}\DF{\NIL}\text{ } - \Op{\VAR{supplied-p}}})}{\}}} - \Op{\kwd*{\&rest} \VAR{var}}) + \Op{\VAR{supplied-p}}})}{\}^{\!\!*}}} + \Op{\kwd{\&rest} \VAR{var}}) \VAR{function} \Op{\NEV{\VAR{doc}}})} { Define macro \retval{\VAR{foo}} able to modify a place. On @@ -549,9 +549,37 @@ } \IT{\CNS*{LAMBDA-LIST-KEYWORDS}} - {List of macro lambda list keywords. + {List of macro lambda list keywords. These are at least: } + \begin{LIST}{.5cm} + + \IT{\kwd*{\&whole} \VAR{var}} + {Bind \VAR{var} to the entire macro call form.} + + \IT{\kwd*{\&optional} \OPn{\VAR{var}}} + {Bind \VAR{var}s to corresponding arguments if any.} + \IT{\Goo{% + \kwd*{\&rest}\XOR + \kwd*{\&body}} \VAR{var}} + {Bind \VAR{var} to a list of remaining arguments.} + + \IT{\kwd*{\&key} \OPn{\VAR{var}}} + {Bind \VAR{var}s to corresponding keyword arguments.} + + \IT{\kwd*{\&allow-other-keys}} + { + Suppress keyword argument checking. Callers can do so using + \kwd*{:allow-other-keys}~\T. + } + + \IT{\kwd*{\&environment} \VAR{var}} + {Bind \VAR{var} to the lexical compilation environment.} + + \IT{\kwd*{\&aux} \VAR{var}} + {Bind \VAR{var}s as in \SO{let\A}.} + + \end{LIST} \end{LIST} diff --git a/commit-message b/commit-message index 531b9af..49676f8 100644 --- a/commit-message +++ b/commit-message @@ -1 +1,3 @@ -Function names are shown with #' where they appear as defaults \ No newline at end of file +Added a few lines on lambda list keywords + +and some minor corrections \ No newline at end of file -- 2.11.4.GIT