【发布时间】:2020-04-17 01:38:56
【问题描述】:
有 Int、Float 等的未装箱类型 GHC。 我知道基于它们构建的代码运行开销更少, 但我看不到如何根据未装箱的 Int 向/从函数输入和输出数据的方法,即
GHC.Exts 定义了函数 (+#) 和 (*#),但我找不到函数装箱/拆箱
readInt:: String -> Int#
showInt:: Int# -> String
boxInt :: Int# -> Int
unboxInt :: Int -> Int#
instance Show Int# 和 instance Read Int# 不能存在,因为 show 和 read 是多态的。
如果没有这些功能,我如何将未装箱类型的优化代码块与应用程序的其余部分集成?
【问题讨论】: