gpt4 book ai didi

haskell 环境

转载 作者:行者123 更新时间:2023-12-02 13:08:28 33 4
gpt4 key购买 nike

我最近完成了“learnyouahaskell”一书,现在我想通过构建 yesod 应用程序来应用我所学到的知识。

但是我不确定如何开始。

关于如何设置 yesod 项目似乎有两个选项。一是Stack ,另一个是 cabal 沙箱。

但是它们之间有什么区别(如果有的话?)和相似之处?其中一种算作最佳实践,而另一种则不算吗?

yesod quickstart建议使用堆栈,这样可以吗还是我应该使用 cabal sanbox?

最佳答案

这里实际上讨论了三种不同的软件包。

  1. cabal-install是当前用于构建应用程序的稳定二进制文件。
  2. stack最近刚刚向公众发布。我相信它正在尝试取代 cabal-install 作为更好、更方便的工具。至少,它向 Haskell 社区展示了一种不同的处理方式。
  3. Cabalcabal-installstack 所基于的库。

至于前两个工具的区别。

cabal-install 是一个成熟的应用程序,在 Haskell 社区中几乎随处使用(至少在开源领域,我不知道人们在背后做什么)。

stack 仍然是一些新项目中使用的新应用程序(至少对于公众而言)。更多信息可参见 here 。但其中一些亮点是:

  • 在项目目录中运行stack build将安装GHC(Haskell编译器)以及项目所需的依赖项。
  • stack 默认情况下从 stackage 开始运行。这是 hackage 的精选版本。这意味着您可以期望不同的软件包能够很好地相互配合。导致可重复的构建。
  • 如果您选择的话,您仍然可以依靠黑客攻击。

这两个应用程序的伟大之处在于它们可以被不同的人用于同一个项目。如果您决定将 cabal-install 与沙箱结合使用,并且有人愿意帮助您的项目,他们只需添加 stack 所需的文件即 cocoa 以在继续使用 cabal-install 的同时使用 stack。反之亦然。

here是一个人第一次使用stack后的体验。他们声称入门更容易一些,因为入门所需的步骤更少。如果不出意外,人们会强调每种工具的优缺点。

注意:我对 Haskell 还很陌生,从未真正使用过stack 实际上,我被告知要远离它,除非在 yesod 中构建一些东西。

编辑:正如此答案下的评论所述,我相信我错误地表述了人们告诉我的有关堆栈的内容。当我问我是否应该切换到堆栈时,人们给我的评论更多的是,如果您足够舒服地使用 cabal 沙箱,则没有理由切换到堆栈,除非您遇到问题.

关于 haskell 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31300398/

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