(abstract) base engine class for Eruby, Eperl, Ejava, and so on. subclass must include generator.
[Validate]