-
Notifications
You must be signed in to change notification settings - Fork 7
/
ChangeLog
173 lines (108 loc) · 5.26 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
Changs from 1.3.2 to 2.0:
Change versioning scheme to only two digits.
Improved README and documentation, though user guide is not quite there.
Completely new underlying infrastructure and interface, which operates
mostly in the same way that CWEB does, with two offline programs
cheztangle and chezweave.
Output now looks like CWEB because it is based off of the cwebman.tex
file
Improved support for Petite
Greatly improved build system
A copy of the CWEB manual is now included in place of the old and
incomplete guide; this will be expanded and changed in future releases
to reflect unique ChezWEB-isms.
We have improved the underlying pretty printer in preparation for more
sophisticated pretty printing.
Improved reliability of the output
Improved meta data tracking in captures and exports
Improved formatting of captures and exports
The programs chezweave and cheztangle now produce more helpful output
to track down bugs and problems.
Empty section bodies are allowed now.
Fully new and mostly compatible CWEB syntax that is not nested
s-expressions
Support for including files
Indexing support with a section and keyword index.
Improved automatic table of contents
Section heading levels with nesting.
Implicit and explicit indexing support
Support for concatenation of sections
Section names do not need to have their captures threaded explicitely
anymore
Support for automatic cross-referencing of section names and numbers
ChezWEB is now written in ChezWEB and can weave/tangle itself
This is a complete rewrite of the system
Changes from 1.3.1 to 1.3.2:
Fix the @> handling of ellipses in the case where we return a value
instead of export definitions.
Changes from 1.3 to 1.3.1:
Make @e a definition rather than a value form.
Make it possible to access the parameters of ChezWEAVE in @e.
Changes from 1.2.3 to 1.3:
Make the system compatible with Chez Scheme 8.2, 8.1, and 8.0.
Miscellaneous Typo fixes.
Add an evaluator form to evaluate code during weaving for their
side-effects. Useful for setting pretty printer settings.
Add scripts to help those who might want to use the source version
of ChezWEB with Petite, without the compiler.
Adjust the behavior of named chunks to enable macros with ellipses
to be defined without needing to be wrapped in a (... ---) form
so long as no ellipses appear in the capture clause.
The guide has been updated to reflect the changes above with some
examples and more exposition.
Changes from 1.2.2 to 1.2.3:
Fix a bug where ‘quote’ was not handled in the right way in
ChezWEAVE.
Changes from 1.2.1 to 1.2.2:
Upgrade the system to use the latest Chez Scheme version 8.1.
Changes from 1.2 to 1.2.1:
Fix a bug in the order of exact? and integer? checks in ChezWEAVE.
Changes from 1.1 to 1.2:
Enable environment variables CHEZWEBMAXELEMS and CHEZWEBLISTCOLUMNS
to control the limits of the simple elemtsn and number of columns
that are generate for output in ChezWEB. This tells the weave
program when it should go from simple listings to columns of
listings for exports and such.
Various reliability improvements have been introduced, including
fixes to the TeX file and the way that we output the TeX, which
enables a greater range of characters in the source code.
@<< and @chunk-ref/thread have been fixed so that threading will
occur even in cases where there is a bunch of nesting.
A manual has been created for ChezWEB, and we now ship with the TeX
file available for users.
Changes from 1.0 to 1.1:
You can now use long names for the control codes rather than just the
short ones:
@ @section
@* @section/header
@< @chunk-ref
@<< @chunk-ref/thread
@> @define-chunk
@c @code
@l @library
The makefile package target now overwrites any tarballs that already
exist.
The Makefile now does a better job of cleaning the directory.
The makefile is now included in binary packages.
The README file is now included in binary packages and has been
altered some.
The chezwebmac.tex file is now included in binary packages.
Greatly improved control over how and where exports are visible. There
are now two control codes for inserting a chunk: @< and @<<. The @<
inserts the chunk only into the current scope and does not allow them
to escape, whereas the @<< wraps the exports at the call site where
the enclosing @> is called.
Library exports now have a greatly improved formatting.
You now specify imports, exports, and captures through named options
at the beginning of a chunk, and all of them are optional. That is,
rather than doing something like this:
(@> Blah () (a b) () (define a #t) (define b #f))
You would now do something like this:
(@> Blah (export a b) (define a #t) (define b #f))
There have been many little formatting improvements in the TeX macros.
The macros are now more robust, but not perfect.
The exports and imports and, in fact, any long list controlled by
ChezWEAVE will now dynamically switch from a ragged paragraph to a
table format if there are too many elements.
The library handling is now more robust.
The weaving of modules can now handle a more complete module syntax.