酒井です。

From: shelarcy <shelarcy / capella.freemail.ne.jp>
Date: Thu, 18 Nov 2004 13:06:01 +0900

> ちなみに lowpassFilter ::  IOArray Point Color -> m (IOArray Point Color)
> では、以下のようなエラーがでました。
> 
> Could not deduce (MArray IOArray Color m) from the context ()
>    arising from use of `newListArray' at C:/develop/ImageViewer.hs:186
> Probable fix:
>      Add (MArray IOArray Color m)
>      to the type signature(s) for `lowpassFilter'
>      Or add an instance declaration for (MArray IOArray Color m)
> In the definition of `lowpassFilter':
> 
> MArray IOArray e IO が IOArray i e なはずなのに……と思いつつも
> IOArray Point Color -> MArray IOArray Color m と宣言したところ
> 以下の通り。
> 
> Class `MArray' used as a type
> When checking kinds in `MArray IOArray Color m'
> In the type: forall m.
>               IOArray Point Color -> MArray IOArray Color m
> While checking the type signature for `lowpassFilter'
> 
> うーん、なんか釈然としない……。

エラーメッセージをちゃんと読みましょう。
原因はすべてエラーメッセージの通りです。

--
酒井 政裕 / Masahiro Sakai

--
ML: haskell-jp / quickml.com
使い方: http://QuickML.com/