gpt4 book ai didi

haskell - 如何隐式导入常用模块?

转载 作者:行者123 更新时间:2023-12-02 18:32:40 25 4
gpt4 key购买 nike

最近我用 Haskell 编写了很多脚本。这是一次非常愉快的体验,因为它是我接触过的最简洁的语言之一。

有一点让我很困扰,那就是我必须为我编写的每个脚本输入相同的 import,而且我几乎每次都会使用一组模块,例如

import Control.Monad as MO
import Data.ByteString.Lazy as BS
import Data.Char as CH
import Data.Csv as C
import Data.Csv.Streaming as CS
import Data.Foldable as FOLD
import Data.Functor as F
import Data.List as L
import Data.List.Split as LS
import Data.Text.Lazy as T
import Data.Text.Lazy.IO as TI
import Data.Vector as V
import Debug.Trace as TR
import Prelude as P

我的意思是我可以每次都复制并粘贴它们,但是有没有办法让这些繁琐的导入变得隐式?就像 Prelude 是如何隐式导入的一样?

最佳答案

出于某些目的,一种选择是编写一个或多个“厨房水槽”模块供您自己使用,然后每次都导入该模块。不幸的是,这对于命名限定导入似乎没有多大作用。另一种选择是使用 {-# LANGUAGE CPP #-}#include 一些库存 header 部分。

但是,我不会特别推荐这些选项。只需保留一个包含您最喜欢的 GHC 扩展和模块导入的“库存模板”,并教您的文本编辑器使用它。不要忘记删掉您实际上不需要的东西。

关于haskell - 如何隐式导入常用模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32900190/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com