newtype 常指编程语言(尤其是 Haskell)中的一种类型声明方式:用来创建一个在运行时与原类型表示相同、但在类型系统里被视为全新且不同的类型的包装,从而提升类型安全、减少误用。(在其他语境中也可指《机动战士高达》系列里的“Newtype/新人类”概念。)
/ˈnuːtaɪp/(也常读作 /ˈnjuːtaɪp/)
I used a newtype to avoid mixing up meters and seconds.
我用 newtype 来避免把“米”和“秒”这两种单位弄混。
In Haskell, newtype can add type safety without the runtime overhead that a typical data wrapper might introduce.
在 Haskell 中,newtype 可以在不增加(通常意义上的)运行时开销的情况下提升类型安全性,而普通的 data 包装有时可能更“重”。
由 new(新的)+ type(类型)构成的合成词,字面意思是“新类型”。在编程语境中,它强调“从类型系统角度看是全新的类型”,即便底层实现可能与原类型一致。