Should this `~or` be a syntax class itself?