identifier should not contain single quote character
improve type error message
add check on duplicated argument name