0

是否有数学符号或其他简洁的符号来表示选项值(OCaml 的option类型,Haskell 的Maybe......)?

它在函数式编程中经常出现,以至于我希望为这种类型找到一个简洁的语法,就像列表有一些标准[]的符号,函数有->符号等等一样。

我知道在更正式的上下文中,可能会使用部分函数表示法,但在大多数情况下,它不如 Some/None(或 Just/Nothing)的某些显式符号那么合适。

理想情况下,我想写一些类似的东西:

This function returns #42 if the input is valid, @ otherwise.

其中#42代表Some 42@代表None,但以标准方式,大多数读者(或至少具有一定数学背景的读者)易于理解。

4

1 回答 1

0

我还没有看到任何这样的具体符号。我知道的最接近的是使用数学符号来表示类型:α ⊕ 1. 这里⊕代表类型的直接和(不相交),1代表单元类型。

这种表示法用于范畴论或类型系统。

于 2012-11-22T08:29:11.543 回答