option package:ghc-internal

option x p will either parse p or return x without consuming any input.
optional p optionally parses p and always returns ().