a class to implement little languages with different syntax