我有两个以下类型的数组:
a :: IOArray Word16 Word16
b :: [Word16]
Run Code Online (Sandbox Code Playgroud)
我想一个函数copyAtPositionI那份阵列中的所有元素b到数组一个数组的第i个指标在开始一个.可以假设索引不会尝试将元素复制到数组a的边界之外.
该函数应为以下类型:
copyAtPositionI :: IOArray Word16 Word16 -> [Word16] -> Word16 -> IO ()
Run Code Online (Sandbox Code Playgroud)
例如(这不是Haskell),
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
b = [10, 11, 12, 13]
Run Code Online (Sandbox Code Playgroud)
copyAtPositionI AB 3应产生一个等于[1,2,3,10,11,12,13,8,9]
我没有在Data.Array.IO包中找到任何完全符合我想要的功能.我只在Data.Array.MArray包中找到了函数writeArray,但我不知道如何为数组b中的每个元素执行该函数.