エラーなしでスクリプトを実行できますが、明示的な forall で Eclipse のエディターにエラーが表示されます。どうすればこれを修正できますか? (これは、cmd で実行したときにも発生します。ここにフラグが必要だと思います!?)
また、整数型へのデフォルト設定に関する警告は煩わしく、それらを停止する方法はありますか?
エラーなしでスクリプトを実行できますが、明示的な forall で Eclipse のエディターにエラーが表示されます。どうすればこれを修正できますか? (これは、cmd で実行したときにも発生します。ここにフラグが必要だと思います!?)
また、整数型へのデフォルト設定に関する警告は煩わしく、それらを停止する方法はありますか?
このように、各ファイルで言語拡張子を明示的に宣言する必要があります
{-# LANGUAGE FOO #-}
whereFOO
はどちらかExplicitForall
ですforall
。ScopedTypeVariables
これは、あなたが書くことができることを意味します。
foo :: forall a. a -> [a]
foo a = [a] :: [a]
明示的な署名が期待どおりに機能するようにします。またはRankNTypes
、次のような上位の型を記述しましょう
foo :: (forall a. a -> a) -> Int -> Int
この場合、あなたが欲しいだけのように見えますExplicitForall
。