can semantically check [[+ [+ int int] float]