add dynamic typing of expressions