Welcome to C'Dent
C'Dent is a new Acmeist programming language for writing portable modules. It is based on the computer programming principle known as H.O.P.E. (Hack Once, Please Everyone)
When you write a module in C'Dent, you can use it in a dozen different programming languages. For instance, you could write a module in Python and use it in JavaScript, or you could write a module in JavaScript and use it in Perl 6, Ruby or Java.
C'Dent has multiple input syntaxes. These syntaxes are strict subsets of common and popular object-oriented programming languages. The current implementation of C'Dent supports Python, JavaScript and Perl 6 inputs. Perl and Ruby will be added soon.
C'Dent parses and analyzes the input into a well defined tree structure that is is known as C'Dent. The C'Dent format can be trivially serialized to disk as YAML or XML.
From the C'Dent format, equivalent modules can be generated in the following (currently supported) languages:
- Perl
- Python
- PHP
- Ruby
- JavaScript
- Scala
- Java
- ActionScript
- Python 3
- Perl 6
- Go
- PIR
- C'Dent
See them all at /examples/hello-world. We plan to add many other languages to that list.
If you have ideas, or want to join the effort, please stop by #cdent on irc.frenode.net.