/[svn]/cduce/trunk/CHANGES
ViewVC logotype

Contents of /cduce/trunk/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1956 - (show annotations)
Wed Jul 11 13:01:15 2007 UTC (5 years, 10 months ago) by abate
File size: 9968 byte(s)
new svn layout

1 0.5.0
2 * Port to OCaml 3.10, with the help of Nicolas Pouillard
3
4 0.4.2
5
6 - Language:
7 * Added int_of_char
8
9 - Bug fix:
10 * "match 1 with (x := `nil) -> x" raised an assert failure
11
12
13 0.4.1
14
15 - Tools:
16 * Error message when using --mlstub without the built-in OCaml interface
17 * Improvements to the type pretty-printer
18 * "include" uses the -I options
19
20 - Language:
21 * New Caml_int builtin type
22 * The // construction no longer stops at the first matched subtree
23 on each branch
24 * New "dump_xml" and "dump_xml_utf8", equivalent to the composition
25 of print and print_xml, but more efficient
26
27
28 - Implementation:
29 * New subtyping algorithm
30 * Small improvement to the pattern matching compiler
31 * Improve type-checking time for map
32 * Improve type-checking of record expressions
33 * Don't display warnings for unused branches in ghost (generated) pattern
34 matching
35
36 - Bug fix:
37 * "eval" can now be called several times and use the toplevel environment
38 * use "open_out_bin" (needed for Cygwin installation)
39 * "open" allowed as tag name
40 * exceptions raised by the expat parser and by the dump_to_file
41 primitives are now catchable
42 * work-around the double close bug in OCaml
43
44 0.4.0pl1
45
46 - Packaging bug
47
48 0.4.0
49
50 - Adapted to OCaml 3.09.
51 - To build the OCaml/CDuce interface, OCaml sources are now needed.
52
53 0.3.92
54
55 - Tools:
56 * Build and install dtd2cduce when PXP is available.
57 * Display of location for errors and warnings compatible with OCaml.
58
59 - Language:
60 * Better error messages for xtransform.
61
62 - Bug fix:
63 * Forgot PLIST.godi in the package.
64
65
66 0.3.91
67
68 - Tools:
69 * Get rid of cdo2ml and mlcduce_wrapper. Now included in cduce.
70
71 - Bug fix:
72 * Internal uid collision when using OCaml externals.
73 * Makes "String.length" works (String used to resolve to the CDuce type).
74
75 0.3.9
76
77 - Language:
78 * Added split_atom, make_atom. Removed atom_of.
79 * Added char_of_int built_in function.
80 * Now int_of also accepts octal binary and hexadecimals.
81 * The field access also works for XML element attributes.
82 * More catchable exceptions (for load_xml, load_file, etc).
83 * namespaces, schemas, "using" identifiers are now exported.
84 * "open" statement.
85
86 - Implementation:
87 * More efficient implementation of records at runtime.
88 * Clean-up of the internal representation.
89 * The XML Schemas are now parsed only at compile time.
90 * The automata for pattern matching are now produced at compile time.
91
92 - Tools:
93 * The functionality of cdo2ml is now assured by cduce itself, with
94 the --mlstub option.
95 * Remove the --dump option (which was deprecated).
96 * Remove support for sessions in the web prototype.
97
98 - Bug fixes:
99 * Correct handling of external references with expat.
100 * Installation problem under some BSD (using "install -c").
101
102 0.3.2
103 * Bug fix in configure
104
105 0.3.1
106
107 - Bug fix:
108 * configure must not require pxp
109 * inclusion of external entities with expat
110 * META.in, cduce_mktop missing in package
111 * several bugfixes for XML Schema
112 * Adapt to ocaml-expat 0.9.1
113 * don't build cdo2ml, mlcduce_wrapper when ocaml iface not available
114
115 - Language:
116 * Can now preserve namespaces when parsing XML or when creating XML elements
117 * "or" is now equivalent to ||
118
119 0.3.0
120
121 - Language:
122 * Warning for capture variables and projections that always return the empty
123 sequence.
124 * Major rewrite of the support for XML Schema
125 * removed print_schema directive
126 * removed the "kind" selector (e.g. S # t as element)
127 * include,import implemented
128 * support wildcards any,anyAttrivbute
129 * support xsi:nil
130 * support xsd:decimal,xsd:float
131 * many bug fixes
132 * Removed the syntax "external {...}", replaced with
133 "unit.val with { ty1 ty2 ... }".
134 * Removed the syntax H:val, replaced with H.val.
135 * Removed the syntax S#t, replaced with S.t.
136 * Overloaded the dot (record field acces, CDuce, OCaml, Schema units).
137 A dot in an identifier must now be escaped with a backslash, e.g. x\.y
138 * Identifiers (for types, values) are now qualified names.
139 * float_of: String -> Float
140 * Syntax modifications for records and attributes:
141 - ".." to denote open record types/patterns:
142 open record: { l1=t1 l2=t2 .. }
143 closed record: { l1=t1 l2=t2 }
144 - the ";" between fields is optional even for records
145 (used to be optional only for attributes)
146 * Keywords are now allowed as type names
147 * Concatenation @ allowed in types
148 * Record concatenation + allowed in types
149 * Changed "string://" URL-pseudo schema to "string:"
150 * Better resolution of external entities for PXP and expat
151
152 - Tools:
153 * A new tool cduce_mktop produces customized CDuce toplevels with embedded
154 OCaml externals.
155 * Removed the validate tool.
156 * Don't build dtd2cduce by default (it requires PXP). An online
157 version is available at http://www.cduce.org/dtd2cduce.html
158
159 - Implementation:
160 * Various bug fixes.
161 * More efficient hash-consing of types.
162 * improved #print_type (does not use the abbreviation for the printed type).
163
164 - Distribution:
165 * MIT license.
166 * CDuce can be built without support for PXP.
167
168 - CQL:
169 * Rewrote the optimization (pushing projections).
170 * The syntax for "where" clause is now simply an "and"-separated
171 list of conditions ("or" is no longer supported).
172 * Better types for "min","max","distinct_values" operators.
173
174 0.2.2
175
176 - Language:
177 * Runtime type-check: (e :? t) raises an exception when e doesn't
178 have type t; the exception is an explanation of why this is not the case.
179 (The actual message may change in the future.)
180 * Better return type for load_xml, defined as:
181 AnyXml=<(Atom) (Record)>[ (AnyXml|Char)* ]
182 * New style for comments: /* ... */
183 Simple and double quotes within these comments are not handled
184 specially. Moreover, these comments cannot be nested.
185 The new style should be used for textual comments (which can include
186 the simple quote); the old style is better for ignoring pieces of code.
187 * Pattern guard /p in regexps to match the current tail. This can be used
188 for setting "markers" without capturing anything, e.g.:
189 [ (/(x:=1) ...) | (/(x:=2) ...) ]
190 Back to the old semantics for default value patterns in regexps
191 (they do capture an element).
192 * New syntax {...; l = p else p'; ... }. p' is applied
193 to the whole matched record when p does not match (or when
194 the field is missing). Equivalent to:
195 { ...; l = p; ...} | ({...;...} & p')
196 * Punning in record/attribute expressions and patterns.
197 { x; y } is a shorthand for {x=x;y=y}.
198 * New syntax for R**n in regular expressions, equivalent
199 to R...R (n times), where n > 0.
200 * Interval arithmetic for the * operator.
201 * Warning for potential division by 0.
202 * New "system", "exit", "getenv" built-in functions.
203
204 - Toplevel, interpreter, compiler:
205 * New #silent, #verbose directives.
206 * New --script option.
207 * Removed the warning "no caml interface".
208
209 - Compilation:
210 * Better compilation of sequence capture variables.
211 Now, [ ... x::Any* ] is as efficient as [ ... ; x ]. Can also be written
212 [ ... /x _* ]. The [ ... ; ... ] syntax is no longer necessary
213 and might be deprecated.
214
215 - Bug fixes, including:
216 * Bug fixes in configure/Makefile for Cygwin.
217 * Bug fix for the compilation of complex patterns with records.
218 * Fixed a little bit support for XML Schema, but still largely broken.
219 * Fix --stdin.
220 * Bug fix in print_xml (do not create a namespace decl for "xml:").
221
222 - Distribution:
223 * apps-cduce-cvs GODI package is updatable.
224 * The release tarball does not contain the CDuce website, only
225 the HTML documentation (memento, tutorial, manual).
226
227 0.2.1
228
229 - string:// scheme for load_xml and others
230 - code updated to OCaml 3.08.1, PXP 1.1.95
231 - NOTE: support for namespaces in XML Schema may be broken
232
233 0.2.0
234
235 - OCaml/CDuce interface.
236
237 - Language:
238 * Support for URLs in load_xml, load_html, load_file, and schemas:
239 e.g. you can write `` load_html "http://www.cduce.org/" ''
240 (need either the ocurl package or the netclient package).
241 * More advanced (and documented) support for XML Schemas.
242 * Preliminary integration of CQL query language that is:
243 select e from p1 in e1, ... ,pn in en where e'.
244 * Allow structured constants in default value patterns (p := c).
245 * Default value patterns in regexps don't consume an element.
246 * Logical operators &&, ||, and not.
247 * New syntax for currified functions
248 fun (p1 : t1)...(pn : tn) : t = ...
249
250 - Incompatible changes:
251 * argv is now an operator of type [] -> [ String* ].
252 * The --dump, --load, --save options are deprecated.
253 * Changes to the command line. "--pxp" is replaced with "--no expat".
254
255 - Implementation:
256 * Code upgraded to Ocaml 3.07.
257 * Major cleaning in progress.
258 * Added internal support for abstract data types.
259 * Using ulex instead of wlex.
260 * Sources can now be in utf8.
261 * Separate compilation.
262 * Lazy implementation of @.
263
264 - Other:
265 * Added configure script.
266 * Various Makefile improvements.
267
268 - Bug fixes:
269 * Bug fixes in the parser. Tuples are now ok in regexps.
270
271
272 0.1.1
273 * Various bug fixes (expat might now work)
274 * Sequencing operator e1;e2 (equivalent to: let [] = e1 in e2)
275 * Encoded references
276
277
278 0.1.0
279 * Support for XML Namespaces
280 * Better support for expat; clean Makefile
281 * Get rid of ;; and let fun in examples
282 * Optional ; for record in attribute position (values and types/patterns)
283 * Split --dump into --load and --save
284 * Better handling of strings (specific node in AST)
285 * Map, transform: tail-recursive implementation
286 * Preliminary support for XML Schema
287 * Various bug fixes
288
289
290 0.0.91
291 * Second alpha release
292 * Bug fixes and syntax changes (e.g. making "fun" optional in "let fun")
293 * Experimenting with expat support (see expat/README)
294
295
296 0.0.9
297 * First public release (alpha release)

CVS Admin">CVS Admin
ViewVC Help
Powered by ViewVC 1.1.5