Ich versuche, das ghc-mod
vim Plugin zu verwenden, Typ/Syntaxprüfung etc. Allerdings zu tun, fand ich, dass ghc-mod
immer voller Pfade von Typen in den Fehlermeldungen, zum Beispiel verwendet:Muss GHC-mod volle Namen für Typen verwenden?
test.hs|71 col 13 error| Couldn't match type ‘Data.Text.Internal.Text’
|| with ‘[GHC.Types.Char]’
|| Expected type: containers-0.5.6.2:Data.Map.Base.Map
|| [GHC.Types.Char]
|| ([(integer-gmp-1.0.0.0:GHC.Integer.Type.Integer,
|| integer-gmp-1.0.0.0:GHC.Integer.Type.Integer)],
|| containers-0.5.6.2:Data.Set.Base.Set
|| integer-gmp-1.0.0.0:GHC.Integer.Type.Integer)
|| Actual type: containers-0.5.6.2:Data.Map.Base.Map
|| Data.Text.Internal.Text
|| ([(integer-gmp-1.0.0.0:GHC.Integer.Type.Integer,
|| integer-gmp-1.0.0.0:GHC.Integer.Type.Integer)],
|| containers-0.5.6.2:Data.Set.Base.Set
|| integer-gmp-1.0.0.0:GHC.Integer.Type.Integer)
|| In the second argument of ‘containers-0.5.6.2:Data.Map.Base.map’, namely
|| ‘zippedMap’
|| In the second argument of ‘(GHC.Base.$)’, namely
|| ‘containers-0.5.6.2:Data.Map.Base.map
...
welche clutters die Bildschirm und es ist sehr schwer für mich herauszufinden, wo schief gelaufen ist. Als Vergleich ist dies die Fehlermeldung für die gleiche Datei mit ghci
:
test.hs:71:13:
Couldn't match type ‘T.Text’ with ‘[Char]’
Expected type: M.Map [Char] ([(Integer, Integer)], S.Set Integer)
Actual type: M.Map T.Text ([(Integer, Integer)], S.Set Integer)
In the second argument of ‘M.map’, namely ‘zippedMap’
In the second argument of ‘($)’, namely
‘M.map
...
, die viel sauberer ist. Gibt es eine Möglichkeit, ghc-mod
kurze Namen für die Typen zu verwenden?
Dies ist nicht das beobachtete Verhalten für mich. Ist das immer noch für dich passiert? Welche Versionen von 'ghc' und' ghc-mod' verwenden Sie? – dkasak
Haben Sie ein eigenständiges Beispiel (einschließlich Importe), das eine Ausgabe wie oben generiert? Ich denke, ich habe eine Idee, was das Problem sein könnte, aber es ist ein bisschen schwer, nur von der Ausgabe zu erzählen ... – Alec