Attempt to generate Regular data types
Switched from Pattern Functor to use directly Code and Interpretation