What is ℂDuce ?
ℂDuce is a modern XML-oriented functional language with innovative features. A compiler is available under the terms of an open-source license. ℂDuce is type-safe, efficient, and offers powerful constructions to work with XML documents.
- Documentation: a Tutorial of ℂDuce, its User's guide, a Quick reference card, and much more.
- Some examples of ℂDuce programs
- Design and features: background information about the design of ℂDuce
- Bug tracker.
- Applications
- Contributions
- Contacts
- How to get ℂDuce: ℂDuce is included in major Linux distributions (Ubuntu, Debian, Fedora, Linux Mint, ...). You can also access the svn, download the sources, OPAM or GODI packages, Windows and MacOS binaries.
Trying ℂDuce online:
- On-line prototype: try the examples and play with them in your web browser.
- Interactive demo page (used for the demonstration at PLAN-X 2005), requires a Mozilla-derived browser.
- You can also use our on-line tool for converting DTDs to ℂDuce types.
- Somebody wrote a CDuce tutorial for the OCaml programmer (many thanks to the anonymous writer).
Spin-offs:
- OcCDuce: developping client/server Web applications with ℂDuce and Ocsigen.
- OCamlDuce: integrating ℂDuce features into OCaml
- XStream: streaming for XML transformations
- ℂDuce_WS: a ℂDuce library to program Web Services.
For more information, you can contact info@cduce.org.
Latest News
2014, April 9: EAPLS Best Dissertation Award for polymorphic ℂDuce. The European Association for Programming Languages and Systems conferred the 2013 Best Dissertation Award to the thesis Parametric Polymorphism for XML Processing Languages which provides the foundations for the (ongoing) polymophic extension of ℂDuce. See the official announcement.
2014, March 5: ℂDuce 0.6.0 is out. See the Download page for download information, or the CHANGES file to know what's new.
2013, July 14: Server migration is over. We finally moved all ℂDuce servers and everything is working again. Please signal us any problem.
2013, July 12: Navigational ℂDuce (or, ℂDuce+XPath). ℂDuce currenty provides a limited form of navigational patterns which does not comply with the XPath standard. We are implementing a new version which integrates with ℂDuce patterns, is XPath-compliant, and is precisely typed even for backward axes. Details in this paper.
2013, May 30: Zhiwu Xu's PhD defense. The thesis, titled Parametric Polymorphism for XML Processing Languages, provides the foundations for a polymophic extension of ℂDuce. More details in this page.
2013, March 15-23: cduce.org not reachable. Moving all the servers (see news below) was not painless and caused cduce.org to disappear for a week. We set up a temporary mirror site and redirected towards it while the problems with Paris Diderot DNS server are not solved. Until then online demos of ℂDuce will not work and svn site cannot be accessed: we apologize for the problem.
2013, February 2nd: We are moving. The PPS Lab (with all its servers) is moving to a new building. Online demos of ℂDuce may not work in next weeks.
2012, June 7th: Post-doc position open position at Paris Diderot to implement the (forthcoming) polymorphic
extension of ℂDuce
The research will take place in the context of the ANR project
Typex: Typeful and Certified XML.
See Polymorphic Functions with Set-Theoretic Types and Set-theoretic Foundation of Parametric Polymorphism and Subtyping for the theoretical foundation of this work.
For more information, contact info@cduce.org.
ℂDuce: the research project
The ℂDuce project is a spin-off of a research effort split amongst two CNRS labs: the PPS laboratory of University of Paris Diderot - Paris 7 and the Toccata Group in LRI laboratory of University Paris 11 (past contributors to this project include the Languages group of ENS in Paris and the Gallium project in INRIA).
Currently most of the research and developpment on ℂDuce is done in the TYPEX project. Have a look at the list of available and expected deliverables.







