Zub*_*air 2 api null types type-systems programming-languages
我正在用许多不同的语言编写一个键值存储API(如ODBC,只是接口,而不是底层存储),虽然我不想在语言之间音译API,但我不希望例如从Java存储值作为"null",然后用另一种不支持null概念的语言读取它.我不确定我是否这么好解释,但它是我第一次尝试:)
见:
关于键值存储API的讨论
这是一个类型系统问题,所以任何回答"0"的人都会忽略这一点.
你所说的是和类型(检查"类型和编程语言").
也就是说,一种拥有n + 1居民的类型.也就是说,其元素是:
要么
这很容易描述为代数数据类型,例如在Haskell中
data Maybe a = Just a | Nothing
Run Code Online (Sandbox Code Playgroud)
奇怪的是,相对较少的语言支持和类型,因此它们将它们编码为产品(一对标签Just或Nothing,以及值本身)或者通过重载该类型的一个居民(例如-1或0变为Nothing).
此类型通常称为Maybe或Optional.
归档时间: |
|
查看次数: |
1707 次 |
最近记录: |