deriving Show
在 Haskell 中,通过简单地添加到类型定义中,很容易使代数类型/可区分联合“可显示”为字符串。
在 F# 中,我最终会编写如下内容:
type Pos =
| Pos of int * int
override this.ToString() =
match this with
Pos(startp, endp) -> sprintf "Pos(%d, %d)" startp endp
显然,更复杂的类型会变得更糟。
deriving Show
有什么方法可以在 F#中获得类似的东西?