Skip to content

Instantly share code, notes, and snippets.

@vasily-kirichenko
Created May 30, 2018 09:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vasily-kirichenko/5899db9576465282b315ebc27a3b8325 to your computer and use it in GitHub Desktop.
Save vasily-kirichenko/5899db9576465282b315ebc27a3b8325 to your computer and use it in GitHub Desktop.
let (|AP|_|) (x: int) = if x < 0 then None else Some()
let (|A|B|C|D|) (x: int) = if x = 1 then A elif x = 2 then B elif x = 3 then C else D
[<EntryPoint>]
let main argv =
match 0 with
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| AP -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| A -> 0
| B -> 0
| C -> 0
| D -> 0
| C -> 0
| D -> 0
| _ -> 1
|> ignore
List.ex
0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment