Separated syntactic analysis from execution