Syntax components rewrite using object inheritance