feature(parser): use reflection for expression evaluation