如果我有键到值的映射,那么键集可以实现为键到固定虚拟值的映射。
有许多假人候选人:
data- 没有构造函数的定义类型- 其他无人居住的类型(例如
forall a . a) - 单例类型
- 未装箱的类型
对我来说最明显的解决方案是使用库存单例类型(),但case我可以从底部区分(),所以我认为内存表示()包括间接。
我有两个问题:
- 是否
Map.fromList [(1, ()), (2, ())]占用更多内存let dummy = () in Map.fromList [(1, dummy), (2, dummy)]? - 考虑到内存占用、cpu 使用率和正确性,建议从bytestring-trie
dummy构造集合的值是多少?