私は自分のカバール プロジェクトでこの種のプラグマを頻繁に使用して、特定のオプションで GHC を強制的にビルドすることに気付きました。
{-# OPTIONS_GHC -XFlexibleInstances -XRankNTypes ... #-}
しかし、他の人が拡張機能を使用しているのを見ると、常に次のように宣言しています。
{-# LANGUAGE FlexibleInstances, RankNTypes, ... #-}
しかし、後者の方法を使用する GHCi にファイルをロードすると、GHC は常に を使用していると不平を言いunrecognised pragma
、すぐに失敗します。
LANGUAGE
GHC がプラグマを受け入れないのはなぜですか? 2 つのうちどちらがより適切な方法ですか?
注: GHC のバージョンは最新の 7.8.3 ですが、これが発生したときは 7.6.* でした。