Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
cduce
cduce
Commits
ff943c80
Commit
ff943c80
authored
Jul 10, 2007
by
Pietro Abate
Browse files
[r2003-04-03 16:19:57 by cvscast] Empty log message
Original author: cvscast Date: 2003-04-03 16:19:58+00:00
parent
0bb5e4f6
Changes
2
Hide whitespace changes
Inline
Side-by-side
types/types.ml
View file @
ff943c80
...
...
@@ -233,7 +233,8 @@ let trivially_disjoint a b =
(
BoolPair
.
trivially_disjoint
a
.
times
b
.
times
)
&&
(
BoolPair
.
trivially_disjoint
a
.
xml
b
.
xml
)
&&
(
BoolPair
.
trivially_disjoint
a
.
arrow
b
.
arrow
)
&&
(
BoolRec
.
trivially_disjoint
a
.
record
b
.
record
)
(
BoolRec
.
trivially_disjoint
a
.
record
b
.
record
)
&&
(
not
(
a
.
absent
&&
b
.
absent
))
module
Descr
=
...
...
@@ -1129,7 +1130,7 @@ let get x = try sample_rec Assumptions.empty x with Not_found -> Other
|
Char
c
->
Chars
.
print_v
ppf
c
|
Pair
(
x1
,
x2
)
->
Format
.
fprintf
ppf
"(%a,%a)"
print
x1
print
x2
|
Xml
(
Atom
tag
,
Pair
(
attr
,
child
))
->
Format
.
fprintf
ppf
"<%s>%a"
(
Atoms
.
value
tag
)
(*
print attr
*)
print
child
Format
.
fprintf
ppf
"<%s
%a
>%a"
(
Atoms
.
value
tag
)
print
attr
print
child
|
Xml
(
x1
,
x2
)
->
Format
.
fprintf
ppf
"XML(%a,%a)"
print
x1
print
x2
|
Record
(
o
,
r
)
->
Format
.
fprintf
ppf
"{ %a%s }"
...
...
web/bench.xml
View file @
ff943c80
...
...
@@ -53,19 +53,50 @@ The benchmarks were performed on a Linux box, Athlon 750, 128 Mb RAM.
<th>
CDuce
</th>
</tr>
<tr
align=
"right"
>
<th>
Type-checking
</th>
<td>
0.04
</td>
<td>
0.05
</td>
<td>
0.15
</td>
<td>
0.0
5
</td>
</tr>
<td>
0.04
</td>
<td>
0.05
</td>
<td>
0.15
</td>
<td>
0.0
4
</td>
</tr>
<tr
align=
"right"
>
<th>
Small file (60 Ko)
</th>
<td>
1.56
</td>
<td>
0.14
</td>
<td>
9.6
</td>
<td>
0.09
</td>
</tr>
<tr
align=
"right"
>
<th>
Medium file (600 Ko)
</th>
<td>
260
</td>
<td>
1.16
</td>
<td>
*
</td>
<td>
0.46
</td>
</tr>
<tr
align =
"right"
>
<th>
Large file (6 Mb)
</th>
<td>
*
</td>
<td>
31.05
</td>
<td>
*
</td>
<td>
6.
1
3
</td>
</tr>
<td>
*
</td>
<td>
31.05
</td>
<td>
*
</td>
<td>
6.3
7
</td>
</tr>
</table>
The * corresponds to checks stopped after ten minutes.
</box>
<box
title=
"CDuce vs. XSLT"
link=
"xslt"
>
We also performed benchmarks between CDuce and a fast XSLT processor (the
{\tt xsltproc} program from
<a
href=
"http://xmlsoft.org/XSLT/"
>
Gnome libxslt library
</a>
).
<p>
<a
href=
"bench/addrbook.cd"
>
CDuce source
</a>
-
<a
href=
"bench/addrbook.xslt1.xml"
>
XSLT source
</a>
-
<a
href=
"bench/addrbook.xslt2.xml"
>
XSLT source (another version)
</a>
-
<a
href=
"bench/addrbook.ml"
>
OCaml file
</a>
(to generate random documents).
</p>
<table
border=
"1"
>
<tr>
<td>
sort
</td>
<th>
XSLT (1)
</th>
<th>
XSLT (2)
</th>
<th>
CDuce
</th>
</tr>
<tr
align=
"right"
>
<th>
5 Mb
</th>
<td>
8.90 / 9.05
</td>
<td>
8.05 / 8.26
</td>
<td>
5.30 / 5.40
</td>
</tr>
<tr
align=
"right"
>
<th>
27 Mb
</th>
<td>
47.10 / 320.80
</td>
<td>
68.40 / 324.50
</td>
<td>
33.85 / 83.65
</td>
</tr>
</table>
The two numbers correspond respectively to total CPU user time
(parsing + transformation), and total wall-clock time (parsing + transformation
+ system time).
</box>
</main>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment