修复动态编程

Fed*_*ini 6 haskell repa

两个相关的问题.

  • 是否存在修复数组的可变(ST monad)实现的原因?等效于Data.Vector.Mutable但具有形状.

  • 与此相关的是,如何在未装箱的表示中实现动态编程算法(从同一数组的其他元素计算的数组元素)?

Ben*_*ier 5

Repa专为批量数据并行编程而设计.必须能够以任意顺序计算数组元素,否则Repa评估方法将不起作用.

如果要基于其他数组元素破坏性地更新数组元素,则会限制评估顺序.如果您无法以批量数据并行方式表达算法,那么Repa将无法帮助您.

  • 即使在没有并行性的情况下,由于修复"形状"界面,它仍然是一个有用的特征.否则,人们不得不使用旧的Data.Array来获取大量算法. (2认同)