Maybe T

和 Rust 里的 Option<T> 差不多。

  • Just (something)
  • Nothing

Either T U

保存着两个类型中的一个。例如 Either Int Bool 可以是 Left 0, Right False

1
2
3
i_want_a_string :: Either Int String -> String
i_want_a_string (Left num) = show num
i_want_a_string (Right str) = str