How to build C'Dent
     
     * Define a common AST that contains all the information to generate:
     * Perl, Python, Ruby, JavaScript output
     * Make a syntax to compile to the AST
     * Why not use the same languages?
     * Use Haskell to write the compilers
     * Inputs need to be strongly typed
     * Outputs can include Java and Haskell and even C