summaryrefslogtreecommitdiff
path: root/web/spiderweb/patches/003
diff options
context:
space:
mode:
Diffstat (limited to 'web/spiderweb/patches/003')
-rw-r--r--web/spiderweb/patches/003179
1 files changed, 179 insertions, 0 deletions
diff --git a/web/spiderweb/patches/003 b/web/spiderweb/patches/003
new file mode 100644
index 0000000000..e5d5931076
--- /dev/null
+++ b/web/spiderweb/patches/003
@@ -0,0 +1,179 @@
+*** doc/cacm.tex.old Thu Apr 6 14:01:25 1989
+--- doc/cacm.tex Mon Apr 10 14:47:13 1989
+***************
+*** 182,188 ****
+ \put(125,30){\line(-1,-1){10}}
+ \put(115,20){\vector(-1,0){25}}
+
+! \put(104,21.5){\makebox(0,0)[b]{\scriptsize\sl CWEAVE}}
+
+ \put(60,15){\framebox(30,10){xtangle.c}}
+ \put(60,-25){\framebox(30,10){xweave.c}}
+--- 182,188 ----
+ \put(125,30){\line(-1,-1){10}}
+ \put(115,20){\vector(-1,0){25}}
+
+! \put(104,21.5){\makebox(0,0)[b]{\scriptsize\sl CTANGLE}}
+
+ \put(60,15){\framebox(30,10){xtangle.c}}
+ \put(60,-25){\framebox(30,10){xweave.c}}
+*** Makefile.old Mon Apr 10 11:14:16 1989
+--- Makefile Tue Apr 11 11:51:42 1989
+***************
+*** 29,35 ****
+ # Put everything into a tar file. Must `make source' first, and should clean
+ distribution:
+ # $(MAKE) clean
+- cd master ; make superclean ; cd .. # remove common .o from master
+ # $(MAKE) source
+ tar cvhf spiderweb.tar README COPYRIGHT BUGS webkernel.tex \
+ Makefile $(DIRECTORIES)
+--- 29,34 ----
+*** master/Makefile.old Thu Apr 6 19:37:11 1989
+--- master/Makefile Tue Apr 11 11:55:29 1989
+***************
+*** 2,12 ****
+ # Not to be sold, but may be used freely for any purpose
+ # For more information, see file COPYRIGHT in the parent directory
+
+ clean:
+ -rm -f *.tex *.dvi *.log *.wlog *~ *.toc
+
+ superclean:
+! -rm -f *.c *.o
+ -rm -f *.tex *.dvi *.log *~ *.toc
+- -rm -f sun3/*.o vax/*.o
+
+--- 2,18 ----
+ # Not to be sold, but may be used freely for any purpose
+ # For more information, see file COPYRIGHT in the parent directory
+
++ OBJECTDIRS=sun3 vax
++
+ clean:
+ -rm -f *.tex *.dvi *.log *.wlog *~ *.toc
++ @-for i in $(OBJECTDIRS); do \
++ rm -f $$i/*.o; \
++ done
++ -rm -f *.o
+
+ superclean:
+! -rm -f sun3/*.o vax/*.o *.o
+! -rm -f *.c
+ -rm -f *.tex *.dvi *.log *~ *.toc
+
+*** master/spider.web.old Tue Apr 11 13:19:58 1989
+--- master/spider.web Tue Apr 11 14:02:06 1989
+***************
+*** 1939,1945 ****
+ if (n%5==0)
+ print "@ @<Test for all of the productions@>=" \
+ > grammarfile ## avoids overflowing \.{WEAVE} of \.{WEAVE}
+! #<Remove \vert\ from |inputline[n]| and put results in |this_string|#>
+ #<Make |this_string| no more than 60 characters wide#>
+ printf "if (%s) {\n\t/* %d: {\\tt %s} */\n%s",\
+ prodtest[n],n,this_string,prodtrans[n] > grammarfile
+--- 1939,1945 ----
+ if (n%5==0)
+ print "@ @<Test for all of the productions@>=" \
+ > grammarfile ## avoids overflowing \.{WEAVE} of \.{WEAVE}
+! #<Change \vert,\_, and {\tt \##} in |inputline[n]|; put results in |this_string|#>
+ #<Make |this_string| no more than 60 characters wide#>
+ printf "if (%s) {\n\t/* %d: {\\tt %s} */\n%s",\
+ prodtest[n],n,this_string,prodtrans[n] > grammarfile
+***************
+*** 1991,2005 ****
+ # It's desirable to put the production in a comment, but we have to
+ get rid of the confusing \vert, or \.{WEAVE} will think it introduces
+ code.
+! #<Remove \vert\ from |inputline[n]| and put results in |this_string|#>=
+! this_string = inputline[n]
+ tempi = index(this_string,"|")
+! while (tempi != 0) {
+! tempa = substr(this_string,1,tempi-1)
+! tempb = substr(this_string,tempi+1)
+! this_string = tempa "\\vert " tempb
+! tempi = index(this_string,"|")
+! }
+
+
+ # We have to keep these productions from making an input line too long.
+--- 1991,2025 ----
+ # It's desirable to put the production in a comment, but we have to
+ get rid of the confusing \vert, or \.{WEAVE} will think it introduces
+ code.
+! We also have to escape underscores and sharp signs, otherwise \TeX\ will
+! think we want math mode.
+! #<Change \vert,\_, and {\tt \##} in |inputline[n]|; put results in |this_string|#>=
+! this_string = inputline[n]
+! tempi = index(this_string,"|")
+! while (tempi != 0) {
+! tempa = substr(this_string,1,tempi-1)
+! tempb = substr(this_string,tempi+1)
+! this_string = tempa "\\vert " tempb
+ tempi = index(this_string,"|")
+! }
+! templ = ""; tempr = this_string
+! tempi = index(tempr,"_")
+! while (tempi != 0) {
+! tempa = substr(tempr,1,tempi-1)
+! tempr = substr(tempr,tempi+1)
+! templ = templ tempa "\\_"
+! tempi = index(tempr,"_")
+! }
+! this_string = templ tempr
+! templ = ""; tempr = this_string
+! tempi = index(tempr,"##")
+! while (tempi != 0) {
+! tempa = substr(tempr,1,tempi-1)
+! tempr = substr(tempr,tempi+1)
+! templ = templ tempa "\\##"
+! tempi = index(tempr,"##")
+! }
+! this_string = templ tempr
+
+
+ # We have to keep these productions from making an input line too long.
+*** doc/spiderwebman.tex.old Thu Apr 6 14:01:32 1989
+--- doc/spiderwebman.tex Tue Apr 11 14:24:39 1989
+***************
+*** 579,599 ****
+ can define two kinds of macros to make the programs shorter and more
+ readable.
+
+! \yskip\hang`\.{@d} \\{identifier} \PASCAL\ text' defines a {\sl
+ simple\/} macro, where the identifier will be replaced by the \PASCAL\ text
+ when \.{TANGLE} produces its output.
+
+! \yskip\hang`\.{@d} \\{identifier}\.{(\\{ actual identifiers})} \PASCAL\ text' defines a
+ {\sl parametric\/} macro, where the identifier will be replaced by the \PASCAL\
+ text and where occurrences of the \\{identifiers} in that \PASCAL\ text will be
+ replaced by arguments.
+
+! C programmers will recognize the C macro processor.
+! The implementation relies on the C preprocessor to expand the macros.
+! The author of \.{Spider} \.{WEB} intends to correct this unfortunate
+! historical accident at the earliest opportunity, by restoring
+! \.{WEB}'s built-in macro processor.
+!
+
+
+
+--- 579,595 ----
+ can define two kinds of macros to make the programs shorter and more
+ readable.
+
+! \yskip\hang`\.{@d} \\{identifier} = \PASCAL\ text' defines a {\sl
+ simple\/} macro, where the identifier will be replaced by the \PASCAL\ text
+ when \.{TANGLE} produces its output.
+
+! \yskip\hang`\.{@d} \\{identifier}\.{(\\{ actual identifiers})} = \PASCAL\ text' defines a
+ {\sl parametric\/} macro, where the identifier will be replaced by the \PASCAL\
+ text and where occurrences of the \\{identifiers} in that \PASCAL\ text will be
+ replaced by arguments.
+
+! For C programmers, this is similar to the C macro processor.
+! \endnewstuff
+
+
+