When I have a usage of the form:
Usage:
foo bar <baz>...
foo bar [-]
I would expect EITHER isPresent args (argument "baz") OR isPresent args (command "[-]") (or isPresent args (argument "[-]") or however you're supposed to refer to it) to be true. Not both.
Yet docopt.hs consistently find argument "baz" even when none exists, if [-] is passed.
Also, the README and documentation are extremely vague on how the stdin argument [-] should be checked for.