try_eval and try_parse are common to parser