「結合の位置に修飾名」GHCエラーを理解します
-
26-09-2019 - |
質問
私は型クラスのAModule
とモジュールFoo
を作成する場合は、
module AModule where
class Foo a where
bar :: a
と他のモジュールBModule
インポートAModule
における資格とすなわち、いくつかのタイプにFoo
のインスタンスを作成しようとします。
module B where
import qualified AModule as A
instance A.Foo Int where
A.bar = 0
GHC "結合位置で修飾名:A.bar" 私に語っています。
私が理解から、これは GHCチケット3197 のに関連して、どの固定としてラベル付けされます。私はGHC 6.12.1を実行していると、まだエラーを取得しています。アム私はここで何かを誤解?
解決
あなたはインスタンス宣言(参照はHaskell 98レポート内A.
を必要としません。 §4.3.2に)。
6.12.3で次のコンパイルます:
instance A.Foo Int where -- # A. here
bar = 0 -- # no A. here
main = print (A.bar :: Int) -- # A. here
所属していません StackOverflow