README.win32 4.11 KB
Newer Older
Karoline Malmkjaer's avatar
Karoline Malmkjaer committed
1 2 3 4 5 6 7 8 9 10 11 12 13
README - CDuce

This package is distributed under the terms of an MIT-like License
(see the CDuce LICENSE file).


------------------------------------------------------------------------------
Abstract
------------------------------------------------------------------------------

CDuce is a programming language adapted to the manipulation of XML
documents.  It has been designed and developed as a joint research
project between the Languages group at ENS (Paris) and the Database
Karoline Malmkjaer's avatar
Karoline Malmkjaer committed
14
group at LRI (Orsay) (http://www.lri.fr/bd).
Karoline Malmkjaer's avatar
Karoline Malmkjaer committed
15 16 17 18 19 20

The current implementation has been written to demonstrate the
innovative features of the language and to validate design choices.
It is a research prototype, not a robust application. However, it has 
been reported to work properly in a production environment.

Karoline Malmkjaer's avatar
Karoline Malmkjaer committed
21 22 23 24 25
Further information about CDuce is available at

  http://www.cduce.org
------------------------------------------------------------------------------

Karoline Malmkjaer's avatar
Karoline Malmkjaer committed
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

1. CDuce command-line interpreter / toplevel

See the man page or HTML manual for usage.

When no CDuce file is given on the command line, the interpreter
behaves as a toplevel. Phrases are interpreted when the user type
";;". Of course, mutually recursive definition (types or functions)
must be entirely contained in an adjacent sequence of phrases
(without ";;" inbetween).


2. CDuce CGI interface

It is also possible to play with CDuce in a web browser, using the
webiface CGI interface (or webiface.opt) program. Of course, You will
need a web server with CGI support. 

There is usually a running version at:

http://www.cduce.org/cgi-bin/cduce

Some features are disabled in the web interface (including
file manipulation).


3. dtd2cduce

dtd2cduce is small tool that generates CDuce type declarations from
a DTD.

Usage: dtd2cduce <prefix> <.dtd file>

<prefix> is a string prepended to tag names to form CDuce type names.
The generated declarations are sent to the standard output.

dtd2cduce can also operates as a cgi-bin. You can access it using
the form at this URL:

http://www.cduce.org/dtd2cduce.html


------------------------------------------------------------------------------
Binary distribution
------------------------------------------------------------------------------

If you have downloaded the "linux static" binary distribution, you got
the cduce and dtd2cduce executables, the man pages, and the web/
subdirectory. To build the website, just do "make".

If you have downloaded the Win32 binary distribution, you got the
cduce and dtd2cduce executables.  You can launch cduce directly or
call it in a command window.  Files with the .cd extension are
supposed to be CDuce scripts and will be run as if you were running
cduce with the --script option.  Files with the extension .cdo are
compiled CDuce files.

------------------------------------------------------------------------------
Documentation
------------------------------------------------------------------------------

There are several sources of information concerning CDuce:

- we started to write a manual and a tutorial as part of the web site. 
  You can find the manual at:

  http://www.cduce.org/manual.html

  or generate it locally (make local_website). Note that the online
  version is probably more up-to-date than the one included in the
  distribution.


- papers about CDuce:

  http://www.cduce.org/papers.html


- code examples:

  In the web site:
  http://www.cduce.org/examples.html
  http://www.cduce.org/bench.html
  
  In the distribution: 
  web/site.cd
  web/examples/build.cd

  Online prototype:
  http://www.cduce.org/cgi-bin/cduce

- the CDuce users' mailing-list:
  http://www.cduce.org/mailing.html


- and of course the source code!


------------------------------------------------------------------------------
Feedback
------------------------------------------------------------------------------

We'll appreciate any feedback (comments, suggestions, questions,
bug reports, ...) concerning the CDuce language or this early release
of the interpreter at info@cduce.org



  -- The CDuce team