haskell 有没有办法为[a]实现一个JE示例?

yjghlzjz  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(111)

我正在写一个网络处理程序,遇到了一些麻烦。我决定把我的有向图实现为弧的链表的朱迪数组。那就是

JudyL [Arc]

字符串
其中,

type Id  = Int
type Day = Int

data Arc = Arc { aid  :: Id,
                 time :: Day} deriving (Eq, Show)


然而,Judy数组要求它们的输入可以转换为Word值,或者一个字大小的指针。

instance JE [a] where
     toWord :: [a] -> IO Word
     fromWord :: Word -> IO [a]


然而,我不知道如何处理Haskell中的指针。任何智慧都将受到极大的赞赏。也许我应该使用数组,但我担心我的数据集非常大(未压缩的TB,尽管很多数据是无关的),并且说服自己在(公认的固态)驱动器上进行额外的读/写可能会严重减慢速度。IDK虽然。

sy5wg1nm

sy5wg1nm1#

您可以复制并粘贴ByteString示例,这实际上是分配一个新的StablePtr,然后将其强制转换为Word。请记住,当(如果)时间到来时,您将需要自己进行释放。

相关问题