Move from expression validation to compile time