【发布时间】:2018-05-22 05:36:25
【问题描述】:
我注意到这种模式在 Haskell 库中很常见:
data Foo = Foo { field :: {-# UNPACK #-} !Sometype }
例如UNPACKing 字段的类型并使其严格。
我明白 pragma 和 annotation 的作用是什么,但我不明白为什么它如此普遍:我在 Haskell 中编程已有 15 年,很少使用严格注释,也从未使用过 UNPACK pragma。
如果这个成语这么有用,为什么不让它不那么“丑”呢?
【问题讨论】:
-
我也做了 12 年的 Haskell 编程,很少使用这样的注解,然后我再一次没有潜心从一段 Haskell 代码中挤出每一毫秒。