ghc-nix:探索使用Nix进行增量Haskell构建的选项

时间:2024-05-05 02:53:20
【文件属性】:

文件名称:ghc-nix:探索使用Nix进行增量Haskell构建的选项

文件大小:11KB

文件格式:ZIP

更新时间:2024-05-05 02:53:20

Haskell

ghc-nix ghc-nix尝试通过使用Nix作为缓存层来增强GHC。 通过能够对未更改的文件重复使用构建伪像,这有可能极大地加快“纯Nix”构建的速度。 通过允许开发人员从共享的构建服务器(而不是本地构建)中提取预先构建的工件,它还具有加速开发人员协作的潜力。 有什么计划? 当您进行cabal build ,Cabal会通过一个exec调用调出到GHC,主要是ghc --make 。 GHC实际上内置了一个构建系统,GHC将形成一个依赖关系图,并在可能的情况下开始进行最少的重新编译。 但是,仅当您具有某种可重用的目录来保留高速缓存伪像时,此功能才有用-并且在Hydra等构建机器上不存在。 然后计划是用可以使用Nix存储的东西替换ghc --make 。 cabal build具有-w选项,可以为其提供另一个编译器,但仍将使用相同的参数调用该可执行文件。 如果我们可以模拟GHC,那


【文件预览】:
ghc-nix-master
----nixpkgs-test()
--------default.nix(2KB)
----prototype()
--------default.nix(1KB)
--------compile-hs.nix(362B)
----ghc-nix()
--------ghc-nix.cabal(712B)
--------default.nix(608B)
--------compile-hs.nix(472B)
--------shell.nix(1KB)
--------.gitignore(15B)
--------.envrc(23B)
--------Main.hs(9KB)
----README.md(4KB)
----test-project()
--------Message.hs(90B)
--------Main.hs(75B)
--------test-project.cabal(710B)

网友评论