From 79a47698484a9289c56dbfbc4a5e0e4aef4fc582 Mon Sep 17 00:00:00 2001 From: Andreas Scherer Date: Sun, 6 Jun 2021 10:49:47 +0000 Subject: [CWEB] New release 4.4. This is yet another service release for CWEB 4.0. * Upstream CWEB 4.4 has been reset to the original buffer sizes of CWEB 3.64c. These are now also used in stand-alone CWEBbin. CWEB for TeX Live uses extended/maxed-out buffer settings. * A few minor typographical bugs were fixed. * Tons of minutiae were addressed in the 'fullmanual' documents. git-svn-id: svn://tug.org/texlive/trunk@59486 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/cwebdir/cwebman.tex | 31 ++++++++++++----------------- 1 file changed, 13 insertions(+), 18 deletions(-) (limited to 'Build/source/texk/web2c/cwebdir/cwebman.tex') diff --git a/Build/source/texk/web2c/cwebdir/cwebman.tex b/Build/source/texk/web2c/cwebdir/cwebman.tex index 4d4206ee64d..e7706db1648 100644 --- a/Build/source/texk/web2c/cwebdir/cwebman.tex +++ b/Build/source/texk/web2c/cwebdir/cwebman.tex @@ -35,7 +35,7 @@ \def\lheader{\mainfont\the\pageno\hfill\sc\runninghead\hfill} \def\rheader{\hfill\sc\runninghead\hfill\mainfont\the\pageno} -\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.3)} +\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.4)} % This verbatim mode assumes that ! marks are !! in the text being copied. \def\verbatim{\begingroup @@ -49,7 +49,7 @@ \null\vfill \centerline{\titlefont The {\ttitlefont CWEB} System of Structured Documentation} -\vskip 18pt\centerline{(Version 4.3 --- May 2021)} +\vskip 18pt\centerline{(Version 4.4 --- June 2021)} \vskip 24pt \centerline{\authorfont Donald E. Knuth and Silvio Levy} \vfill @@ -139,7 +139,7 @@ for \CEE/ if you so desire. The philosophy behind \.{CWEB} is that programmers who want to provide the best possible documentation for their programs need two things -simultaneously: a language like \TEX/ for formatting, and a language like +simultaneously: a language like \TEX/ for formatting, and a language like \CEE/ for programming. Neither type of language can provide the best documentation by itself. But when both are appropriately combined, we obtain a system that is much more useful than either language separately. @@ -432,7 +432,7 @@ examples: $$ \displaylines{ \hbox{\.{if} \.{(x==0)} \.{@}} \cr -\hbox{\.{...} \.{using} \.{the} \.{algorithm} +\hbox{\.{...} \.{using} \.{the} \.{algorithm} \.{in} \.{|@|.}} } $$ The first of these excerpts @@ -480,7 +480,7 @@ the compiler's benefit) and which \.{CWEAVE} prints as $\T{\~40/}$. Similarly, \.{CWEAVE} prints the hexadecimal \CEE/ constant `\.{0x20}' as \T{\^20/}. The use of italic font for octal digits and typewriter font for hexadecimal digits makes the meaning of such constants clearer in -a document. For consistency, then, you should type `\.{|040|}' or +a document. For consistency, then, you should type `\.{|040|}' or `\.{|0x20|}' in the \TEX/ part of the section. And if you type a binary constant like `\.{0b00101010}', \.{CWEAVE} prints @@ -845,7 +845,8 @@ with a semicolon. Consider constructions like $$\lpile{\.{if (condition) macro @;}\cr \.{else break;}\cr}$$ where \\{macro} is defined to be a compound statement (enclosed in braces). -This is a well-known infelicity of \CEE/ syntax. +This is a well-known infelicity of \CEE/ syntax. You can add a visible +semicolon with \.{@t;@>} (before \.{@;}). \@{[} [MC] See \.{@]}. @@ -1262,15 +1263,13 @@ do { } while (limit==buffer); @ @= -{ - change_limit=change_buffer+(ptrdiff_t)(limit-buffer); - strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); -} +change_limit=change_buffer+(ptrdiff_t)(limit-buffer); +strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); !endgroup \endgroup \vfill\eject -\def\runninghead{APPENDIX A --- TRANSLATION BY {\tentt CTANGLE}} +\def\runninghead{APPENDIX A --- TRANSLATION BY {\tentt CTANGLE}} Here's the portion of the \CEE/ code generated by \.{CTANGLE} that corresponds to the source on the preceding page. Notice that sections~29, 30 and~31 @@ -1324,10 +1323,8 @@ return; /*31:*/ #line 270 "common.w" -{ change_limit= change_buffer+(ptrdiff_t)(limit-buffer); strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); -} /*:31*/ #line 234 "common.w" @@ -1496,12 +1493,10 @@ ${}\{{}$\1\6 \M{31}\B\X31:Move \PB{\\{buffer}} and \PB{\\{limit}} to \PB{\\{change\_buffer}} and \PB{\\{change\_limit}}\X${}\E{}$\6 -${}\{{}$\1\6 -${}\\{change\_limit}\K\\{change\_buffer}+(\&{ptrdiff\_t})(\\{limit}-% +$\\{change\_limit}\K\\{change\_buffer}+(\&{ptrdiff\_t})(\\{limit}-% \\{buffer});{}$\6 ${}\\{strncpy}(\\{change\_buffer},\39\\{buffer},\39(\&{size\_t})(\\{limit}-% -\\{buffer}+\T{1}));{}$\6 -\4${}\}{}$\2\par +\\{buffer}+\T{1})){}$;\par \Us27\ET32.\fi \vfil\eject\titletrue \rightskip=0pt % get out of C mode (cf. \B) @@ -1597,7 +1592,7 @@ $$\lpile{\.{\\def\\topofcontents\{\\null\\vfill}\cr \.{ { }\\titlefalse \% include headline on the contents page}\cr \.{ { }\\def\\rheader\{\\mainfont The \{\\tt CWEAVE\}{ }processor\\hfil\}}\cr \.{ { }\\centerline\{\\titlefont The \{\\ttitlefont CWEAVE\}{ }processor\}}\cr - \.{ { }\\vskip 15pt \\centerline\{(Version 4.3)\}{ }\\vfill\}}\cr}$$ + \.{ { }\\vskip 15pt \\centerline\{(Version 4.4)\}{ }\\vfill\}}\cr}$$ Redefining \.{\\rheader}, which is the headline for right-hand pages, suffices in this case to put the desired information at the top of the contents page. -- cgit v1.2.3