/[svn]/CHANGES
ViewVC logotype

Contents of /CHANGES

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1570 - (show annotations)
Tue Jul 10 19:03:49 2007 UTC (5 years, 10 months ago) by abate
File size: 7139 byte(s)
[r2005-03-22 15:26:33 by afrisch] Empty log message

Original author: afrisch
Date: 2005-03-22 15:26:33+00:00
1 0.3.2
2 * Bug fix in configure
3
4 0.3.1
5
6 - Bug fix:
7 * configure must not require pxp
8 * inclusion of external entities with expat
9 * META.in, cduce_mktop missing in package
10 * several bugfixes for XML Schema
11 * Adapt to ocaml-expat 0.9.1
12 * don't build cdo2ml, mlcduce_wrapper when ocaml iface not available
13
14 - Language:
15 * Can now preserve namespaces when parsing XML or when creating XML elements
16 * "or" is now equivalent to ||
17
18 0.3.0
19
20 - Language:
21 * Warning for capture variables and projections that always return the empty
22 sequence.
23 * Major rewrite of the support for XML Schema
24 * removed print_schema directive
25 * removed the "kind" selector (e.g. S # t as element)
26 * include,import implemented
27 * support wildcards any,anyAttrivbute
28 * support xsi:nil
29 * support xsd:decimal,xsd:float
30 * many bug fixes
31 * Removed the syntax "external {...}", replaced with
32 "unit.val with { ty1 ty2 ... }".
33 * Removed the syntax H:val, replaced with H.val.
34 * Removed the syntax S#t, replaced with S.t.
35 * Overloaded the dot (record field acces, CDuce, OCaml, Schema units).
36 A dot in an identifier must now be escaped with a backslash, e.g. x\.y
37 * Identifiers (for types, values) are now qualified names.
38 * float_of: String -> Float
39 * Syntax modifications for records and attributes:
40 - ".." to denote open record types/patterns:
41 open record: { l1=t1 l2=t2 .. }
42 closed record: { l1=t1 l2=t2 }
43 - the ";" between fields is optional even for records
44 (used to be optional only for attributes)
45 * Keywords are now allowed as type names
46 * Concatenation @ allowed in types
47 * Record concatenation + allowed in types
48 * Changed "string://" URL-pseudo schema to "string:"
49 * Better resolution of external entities for PXP and expat
50
51 - Tools:
52 * A new tool cduce_mktop produces customized CDuce toplevels with embedded
53 OCaml externals.
54 * Removed the validate tool.
55 * Don't build dtd2cduce by default (it requires PXP). An online
56 version is available at http://www.cduce.org/dtd2cduce.html
57
58 - Implementation:
59 * Various bug fixes.
60 * More efficient hash-consing of types.
61 * improved #print_type (does not use the abbreviation for the printed type).
62
63 - Distribution:
64 * MIT license.
65 * CDuce can be built without support for PXP.
66
67 - CQL:
68 * Rewrote the optimization (pushing projections).
69 * The syntax for "where" clause is now simply an "and"-separated
70 list of conditions ("or" is no longer supported).
71 * Better types for "min","max","distinct_values" operators.
72
73 0.2.2
74
75 - Language:
76 * Runtime type-check: (e :? t) raises an exception when e doesn't
77 have type t; the exception is an explanation of why this is not the case.
78 (The actual message may change in the future.)
79 * Better return type for load_xml, defined as:
80 AnyXml=<(Atom) (Record)>[ (AnyXml|Char)* ]
81 * New style for comments: /* ... */
82 Simple and double quotes within these comments are not handled
83 specially. Moreover, these comments cannot be nested.
84 The new style should be used for textual comments (which can include
85 the simple quote); the old style is better for ignoring pieces of code.
86 * Pattern guard /p in regexps to match the current tail. This can be used
87 for setting "markers" without capturing anything, e.g.:
88 [ (/(x:=1) ...) | (/(x:=2) ...) ]
89 Back to the old semantics for default value patterns in regexps
90 (they do capture an element).
91 * New syntax {...; l = p else p'; ... }. p' is applied
92 to the whole matched record when p does not match (or when
93 the field is missing). Equivalent to:
94 { ...; l = p; ...} | ({...;...} & p')
95 * Punning in record/attribute expressions and patterns.
96 { x; y } is a shorthand for {x=x;y=y}.
97 * New syntax for R**n in regular expressions, equivalent
98 to R...R (n times), where n > 0.
99 * Interval arithmetic for the * operator.
100 * Warning for potential division by 0.
101 * New "system", "exit", "getenv" built-in functions.
102
103 - Toplevel, interpreter, compiler:
104 * New #silent, #verbose directives.
105 * New --script option.
106 * Removed the warning "no caml interface".
107
108 - Compilation:
109 * Better compilation of sequence capture variables.
110 Now, [ ... x::Any* ] is as efficient as [ ... ; x ]. Can also be written
111 [ ... /x _* ]. The [ ... ; ... ] syntax is no longer necessary
112 and might be deprecated.
113
114 - Bug fixes, including:
115 * Bug fixes in configure/Makefile for Cygwin.
116 * Bug fix for the compilation of complex patterns with records.
117 * Fixed a little bit support for XML Schema, but still largely broken.
118 * Fix --stdin.
119 * Bug fix in print_xml (do not create a namespace decl for "xml:").
120
121 - Distribution:
122 * apps-cduce-cvs GODI package is updatable.
123 * The release tarball does not contain the CDuce website, only
124 the HTML documentation (memento, tutorial, manual).
125
126 0.2.1
127
128 - string:// scheme for load_xml and others
129 - code updated to OCaml 3.08.1, PXP 1.1.95
130 - NOTE: support for namespaces in XML Schema may be broken
131
132 0.2.0
133
134 - OCaml/CDuce interface.
135
136 - Language:
137 * Support for URLs in load_xml, load_html, load_file, and schemas:
138 e.g. you can write `` load_html "http://www.cduce.org/" ''
139 (need either the ocurl package or the netclient package).
140 * More advanced (and documented) support for XML Schemas.
141 * Preliminary integration of CQL query language that is:
142 select e from p1 in e1, ... ,pn in en where e'.
143 * Allow structured constants in default value patterns (p := c).
144 * Default value patterns in regexps don't consume an element.
145 * Logical operators &&, ||, and not.
146 * New syntax for currified functions
147 fun (p1 : t1)...(pn : tn) : t = ...
148
149 - Incompatible changes:
150 * argv is now an operator of type [] -> [ String* ].
151 * The --dump, --load, --save options are deprecated.
152 * Changes to the command line. "--pxp" is replaced with "--no expat".
153
154 - Implementation:
155 * Code upgraded to Ocaml 3.07.
156 * Major cleaning in progress.
157 * Added internal support for abstract data types.
158 * Using ulex instead of wlex.
159 * Sources can now be in utf8.
160 * Separate compilation.
161 * Lazy implementation of @.
162
163 - Other:
164 * Added configure script.
165 * Various Makefile improvements.
166
167 - Bug fixes:
168 * Bug fixes in the parser. Tuples are now ok in regexps.
169
170
171 0.1.1
172 * Various bug fixes (expat might now work)
173 * Sequencing operator e1;e2 (equivalent to: let [] = e1 in e2)
174 * Encoded references
175
176
177 0.1.0
178 * Support for XML Namespaces
179 * Better support for expat; clean Makefile
180 * Get rid of ;; and let fun in examples
181 * Optional ; for record in attribute position (values and types/patterns)
182 * Split --dump into --load and --save
183 * Better handling of strings (specific node in AST)
184 * Map, transform: tail-recursive implementation
185 * Preliminary support for XML Schema
186 * Various bug fixes
187
188
189 0.0.91
190 * Second alpha release
191 * Bug fixes and syntax changes (e.g. making "fun" optional in "let fun")
192 * Experimenting with expat support (see expat/README)
193
194
195 0.0.9
196 * First public release (alpha release)

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