:set -XNoImplicitPrelude
Run Code Online (Sandbox Code Playgroud)
这样做的潜在好处/原因是什么?
Dan*_*ner 13
没有其他方法可以完全避免导入Prelude.即使看似有效
import Prelude ()
Run Code Online (Sandbox Code Playgroud)
这是一个显式导入(因此会覆盖隐式导入)并且定义没有名称,但仍然会将一堆类实例放在可能不需要的范围内.
当你想要使用替代前奏时,完全避免标准前奏是很有用的.或者当你想使用其他GHC扩展重载语法时; 或在其他利基情况下.如果你打算使用许多恰好与前奏中命名相同的函数,并且希望避免在任何地方对它们进行限定(尽管import Prelude ()在许多这样的情况下较小就足够了),避免前奏也很有用.