我有一个newtype
我想保存在一个文件中,如下所示:
type Index = (Int, Int)
newtype Board a = Board { unboard :: Array Index a }
所以基本上是一个Array
. 但也许有一天我想像这样添加一些其他数据:
data BoardWithInfo a = BWI {
bwiBoard :: Board a,
bwiRef :: String,
bwiStart :: Index
}
等等。我只是想知道,是否有任何方便、优化的功能可以做到这一点,Array
并ByteString
结合数据——反之亦然。或者我自己怎么写,如果没有的话。