要在项目的所有文件中使用UnicodeSyntax
等语言扩展名,有两个选项:
{-# LANGUAGE UnicodeSyntax #-}
extensions: UnicodeSyntax
文件的每个部分(库,可执行文件,测试版)中添加.cabal
。是否有任何理由或最佳做法可以选择其中一种?
我使用stack
及其标准new-template
来处理简单包裹。
答案 0 :(得分:4)
就个人而言,我总是列出使用它们的每个文件中的所有语言扩展。然后,您可以通过查看代码确切地确定特定代码片段正在使用的扩展名。这意味着我可以立即告诉,例如,这个代码是否与模板Haskell有关。而且我不必查看任何相关文件来解决这个问题。这也意味着我可以从命令行手动编译该模块,而无需记住我需要的扩展名。
我想有一些事情可以说是能够浏览Cabal规范以查看特定包使用的扩展名。