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

Diff of /cduce/trunk/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1394 by abate, Tue Jul 10 18:45:23 2007 UTC revision 1786 by abate, Tue Jul 10 19:22:53 2007 UTC
# Line 1  Line 1 
1  Since 0.2.1  Since 0.3.91
2  - interval arithmetic for the * operator  
3  - warning for potential division by 0  - Tools:
4  - Pattern guard /p in regexps (to match the current tail)     * Build and install dtd2cduce when PXP is available.
5  - Back to the old semantics for default value patterns in regexps     * Display of location for errors and warnings compatible with OCaml.
6    (the non-capturing semantics is obtained with /(x:=c))  
7  - bug fixes in configure/Makefile for Cygwin  - Language:
8  - bug fix for the compilation of complex patterns with records     * Better error messages for xtransform.
9  - new syntax { l = p else p' }  
10  - fixed a little bit support for XML Schema, but still largely broken  
11  - better compilation of sequence capture variables  0.3.91
12  - punning in record/attribute expressions and values ({ x; y } -> {x=x;y=y})  
13    - Tools:
14       * Get rid of cdo2ml and mlcduce_wrapper. Now included in cduce.
15    
16    - Bug fix:
17       * Internal uid collision when using OCaml externals.
18       * Makes "String.length" works (String used to resolve to the CDuce type).
19    
20    0.3.9
21    
22    - Language:
23       * Added split_atom, make_atom. Removed atom_of.
24       * Added char_of_int built_in function.
25       * Now int_of also accepts octal binary and hexadecimals.
26       * The field access also works for XML element attributes.
27       * More catchable exceptions (for load_xml, load_file, etc).
28       * namespaces, schemas, "using" identifiers are now exported.
29       * "open" statement.
30    
31    - Implementation:
32       * More efficient implementation of records at runtime.
33       * Clean-up of the internal representation.
34       * The XML Schemas are now parsed only at compile time.
35       * The automata for pattern matching are now produced at compile time.
36    
37    - Tools:
38       * The functionality of cdo2ml is now assured by cduce itself, with
39         the --mlstub option.
40       * Remove the --dump option (which was deprecated).
41       * Remove support for sessions in the web prototype.
42    
43    - Bug fixes:
44       * Correct handling of external references with expat.
45       * Installation problem under some BSD (using "install -c").
46    
47    0.3.2
48       * Bug fix in configure
49    
50    0.3.1
51    
52    - Bug fix:
53       * configure must not require pxp
54       * inclusion of external entities with expat
55       * META.in, cduce_mktop missing in package
56       * several bugfixes for XML Schema
57       * Adapt to ocaml-expat 0.9.1
58       * don't build cdo2ml, mlcduce_wrapper when ocaml iface not available
59    
60    - Language:
61       * Can now preserve namespaces when parsing XML or when creating XML elements
62       * "or" is now equivalent to ||
63    
64    0.3.0
65    
66    - Language:
67       * Warning for capture variables and projections that always return the empty
68         sequence.
69       * Major rewrite of the support for XML Schema
70         * removed print_schema directive
71         * removed the "kind" selector (e.g. S # t as element)
72         * include,import implemented
73         * support wildcards any,anyAttrivbute
74         * support xsi:nil
75         * support xsd:decimal,xsd:float
76         * many bug fixes
77       * Removed the syntax  "external {...}", replaced with
78         "unit.val with { ty1 ty2 ... }".
79       * Removed the syntax H:val, replaced with H.val.
80       * Removed the syntax S#t, replaced with S.t.
81       * Overloaded the dot (record field acces, CDuce, OCaml, Schema units).
82         A dot in an identifier must now be escaped with a backslash, e.g. x\.y
83       * Identifiers (for types, values) are now qualified names.
84       * float_of: String -> Float
85       * Syntax modifications for records and attributes:
86          - ".." to denote open record types/patterns:
87              open record:  { l1=t1 l2=t2 .. }
88              closed record: { l1=t1 l2=t2 }
89          - the ";" between fields is optional even for records
90            (used to be optional only for attributes)
91       * Keywords are now allowed as type names
92       * Concatenation @ allowed in types
93       * Record concatenation + allowed in types
94       * Changed "string://" URL-pseudo schema to "string:"
95       * Better resolution of external entities for PXP and expat
96    
97    - Tools:
98       * A new tool cduce_mktop produces customized CDuce toplevels with embedded
99         OCaml externals.
100       * Removed the validate tool.
101       * Don't build dtd2cduce by default (it requires PXP). An online
102         version is available at http://www.cduce.org/dtd2cduce.html
103    
104    - Implementation:
105       * Various bug fixes.
106       * More efficient hash-consing of types.
107       * improved #print_type (does not use the abbreviation for the printed type).
108    
109    - Distribution:
110       * MIT license.
111       * CDuce can be built without support for PXP.
112    
113    - CQL:
114       * Rewrote the optimization (pushing projections).
115       * The syntax for "where" clause is now simply an "and"-separated
116         list of conditions ("or" is no longer supported).
117       * Better types for "min","max","distinct_values" operators.
118    
119    0.2.2
120    
121    - Language:
122      * Runtime type-check: (e :? t) raises an exception when e doesn't
123        have type t; the exception is an explanation of why this is not the case.
124        (The actual message may change in the future.)
125      * Better return type for load_xml, defined as:
126        AnyXml=<(Atom) (Record)>[ (AnyXml|Char)* ]
127      * New style for comments: /* ... */
128        Simple and double quotes within these comments are not handled
129        specially. Moreover, these comments cannot be nested.
130        The new style should be used for textual comments (which can include
131        the simple quote); the old style is better for ignoring pieces of code.
132      * Pattern guard /p in regexps to match the current tail. This can be used
133        for setting "markers" without capturing anything, e.g.:
134           [ (/(x:=1) ...) | (/(x:=2) ...) ]
135        Back to the old semantics for default value patterns in regexps
136        (they do capture an element).
137      * New syntax  {...; l = p else p'; ... }. p' is applied
138        to the whole matched record when p does not match (or when
139        the field is missing). Equivalent to:
140        { ...; l = p; ...} | ({...;...} & p')
141      * Punning in record/attribute expressions and patterns.
142        { x; y } is a shorthand for {x=x;y=y}.
143      * New syntax for R**n in regular expressions, equivalent
144        to R...R (n times), where n > 0.
145      * Interval arithmetic for the * operator.
146      * Warning for potential division by 0.
147      * New "system", "exit", "getenv" built-in functions.
148    
149    - Toplevel, interpreter, compiler:
150      * New #silent, #verbose directives.
151      * New --script option.
152      * Removed the warning "no caml interface".
153    
154    - Compilation:
155      * Better compilation of sequence capture variables.
156        Now, [ ... x::Any* ] is as efficient as [ ... ; x ]. Can also be written
157        [ ... /x _* ]. The [ ... ; ... ] syntax is no longer necessary
158        and might be deprecated.
159    
160    - Bug fixes, including:
161      * Bug fixes in configure/Makefile for Cygwin.
162      * Bug fix for the compilation of complex patterns with records.
163      * Fixed a little bit support for XML Schema, but still largely broken.
164      * Fix --stdin.
165      * Bug fix in print_xml (do not create a namespace decl for "xml:").
166    
167    - Distribution:
168      * apps-cduce-cvs GODI package is updatable.
169      * The release tarball does not contain the CDuce website, only
170        the HTML documentation (memento, tutorial, manual).
171    
172  0.2.1  0.2.1
173    

Legend:
Removed from v.1394  
changed lines
  Added in v.1786

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