0

エラーなしでスクリプトを実行できますが、明示的な forall で Eclipse のエディターにエラーが表示されます。どうすればこれを修正できますか? (これは、cmd で実行したときにも発生します。ここにフラグが必要だと思います!?)

ここに画像の説明を入力


また、整数型へのデフォルト設定に関する警告は煩わしく、それらを停止する方法はありますか?

ここに画像の説明を入力

4

1 に答える 1

2

このように、各ファイルで言語拡張子を明示的に宣言する必要があります

{-# LANGUAGE FOO #-}

whereFOOはどちらかExplicitForallですforallScopedTypeVariablesこれは、あなたが書くことができることを意味します。

 foo :: forall a. a -> [a]
 foo a = [a] :: [a]

明示的な署名が期待どおりに機能するようにします。またはRankNTypes、次のような上位の型を記述しましょう

 foo :: (forall a. a -> a) -> Int -> Int

この場合、あなたが欲しいだけのように見えますExplicitForall

于 2014-02-18T12:51:34.030 に答える