选择Linux发行版进行Haskell开发

发布于 2024-08-08 09:16:08 字数 1431 浏览 3 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(12

孤千羽 2024-08-15 09:16:08

我当前的发行版 Arch Linux 对 Haskell 具有广泛的支持。

您可以在此处(位于在撰写本文时,有 1370 个软件包可用)。还有一个关于 Arch Linux 中的 Haskell 软件包的 wiki 页面

My current distro, Arch Linux, has extensive support for Haskell.

You can see the status of directly available haskell packages here (at the time of writing, 1370 packages are available). There is also a wiki page about Haskell packages in Arch Linux.

木格 2024-08-15 09:16:08

我计划检查 NixOS。它有一个纯功能性的包管理器(支持多版本和回滚),由Haskell程序员开发,并且具有一些 Haskell 包。

就软件包数量而言,它可能不是最完整的,但对于 Haskeller 来说,它似乎非常有趣。

I plan to check NixOS. It has a purely functional package manager (supporting multiple versions and rollbacks), it's developed by Haskell programmers, and it has a few Haskell packages.

It may not be the most complete in terms of number of packages, but it seems to be very interesting for Haskellers.

匿名的好友 2024-08-15 09:16:08

Haskell Platform 2009.2.0.1 位于 Fedora 11 中。
Haskell Platform 2009.2.0.2 位于 Fedora 12 中。
Haskell Platform 2009.2.0.2.1 在 Debian Unstable 中,它应该会在一周左右迁移到测试版。
Haskell Platform 2009.2.0.2 在 Gentoo 测试中被屏蔽。
Arch Linux 可能是最全面的,近 90% 的 Hackage 都封装在 AUR 中。

Haskell Platform 2009.2.0.1 is in Fedora 11.
Haskell Platform 2009.2.0.2 is in Fedora 12.
Haskell Platform 2009.2.0.2.1 is in Debian Unstable, it should migrate to Testing in a week or so.
Haskell Platform 2009.2.0.2 is masked in Gentoo testing.
Arch Linux is probably the most comprehensive, with nearly 90% of Hackage packaged in AUR.

感悟人生的甜 2024-08-15 09:16:08

我使用的是 Arch Linux,虽然 Haskell 得到了很好的支持,并且有大量的软件包大多是最新版本,但版本和依赖项存在问题。

典型的 Haskell 包依赖于其他几个包。例如,它可能依赖于版本 1.0.1。另一个包所依赖的一个或多个包已更新为“1.0.2”,从而打破了对“1.0.1”版本的依赖,这是非常常见的情况。

如果您尝试安装位于类似金字塔的依赖关系树中较高位置的 Haskell 软件包(例如 GUI 应用程序或游戏),您可以非常确定,它只能在某个位置安装几天。时间,直到安装失败,因为一个不起眼的变形单子包已从版本 3.0.4 更新到 3.0.5。

此外,“arch-haskell”团队拥有所有 Haskell 软件包而不是 AUR 的受信任用户或常规用户的整个想法是一个糟糕的想法,因为与替代方案相比,他们更新软件包的速度很慢。我怎么不知道为什么 Haskell 包的处理方式有例外,因为这对于 Arch Linux 来说并不常见。

我遇到过这样的情况,解决 Haskell 软件包神秘编译问题的唯一方法是卸载然后重新安装所有 Haskell 依赖项,包括 ghc。

总而言之,Arch 对于 Haskell 开发来说非常棒,但是当您不只是安装依赖金字塔低层的包时,很容易陷入损坏的包的海洋中。这通常是由于次版本号不兼容,而不是代码不兼容。

我喜欢 Arch Linux 和 Haskell,但仍然认为这是一个问题。

更新#1:Arch 已经不再拥有拥有所有 haskell 软件包的“arch-haskell”团队,现在应该成为各地 Haskell 开发人员的首选。

更新 #2:我不认为版本问题是 Arch 特有的问题,而是 Haskell 包如何相互依赖的问题。一个可以依赖特定函数的特定版本而不是依赖库的系统可能会有所帮助。

I'm using Arch Linux, and while Haskell is well supported, with plenty of packages that are mostly fresh and up to date versions, there is a problem with versions and dependencies.

A typical Haskell package depends on several other packages. For example, it may depend on version 1.0.1. It's extremely common that one or more of the packages that another package depends on have been updated to "1.0.2", thus breaking the dependency on the "1.0.1" version.

If you're trying to install a Haskell package that is high up in the pyramid-like dependency tree, like a GUI-application or a game, you can be quite sure that it will only be possible to install for a few days at a time, until the installation will fail, because an obscure package for transmogrifying monads has been updated from version 3.0.4 to 3.0.5.

Also, the whole idea of an "arch-haskell" team owning all the Haskell packages, instead of trusted users or regular users of the AUR is a terrible idea, as they are slow at updating the packages, compared to the alternative. I how no idea why there has been made an exception for how Haskell packages are treated, as this is uncommon for Arch Linux.

I have experienced cases where the only way to fix mysterious compilation-problems with a Haskell package has been to uninstall and then reinstall all the Haskell dependencies, including ghc.

All in all, Arch is fantastic for Haskell development, but it's easy to get caught up in a sea of broken packages the moment you're not just installing a package low in the dependency pyramid. This is usually due to incompatible minor version numbers, not incompatible code.

I love both Arch Linux and Haskell, but still think this is a problem.

Update #1: Arch has stopped having an "arch-haskell" team that owns all the haskell packages, and should now be the prime choice for Haskell developers everywhere.

Update #2: I don't think the problem with versions is a problem that is specific for Arch, it's a problem with how Haskell packages depends on each other. A system where one can depend on specific versions of specific functions instead of depending on libraries might help.

一梦等七年七年为一梦 2024-08-15 09:16:08

不确定 Haskell 具体情况,但我发现 Ubuntu 已保持最新状态,但更重要的是它们倾向于强调稳定性。如果您正在进行 Haskell 开发,我认为您更喜欢稳定性而不是尖端软件......

Not sure about Haskell specifically, but I've found Ubuntu is greatly kept up to date but more importantly than that they tend to stress stability. If you are doing Haskell development, I assume you'd prefer stability over bleeding edge software...

阳光下的泡沫是彩色的 2024-08-15 09:16:08

实际上,你不必选择特定的一个,只要你使用的至少提供了可用的 Haskell 解释器/编译器之一(Hugs、GHC 等)和 cabal/darcs 的软件包(你需要其中之一来从巨大的 HackageDB 或darcs 存储库中选择一些有用的库/工具)。我曾经考虑过同样的问题,但后来当我知道如何使用 cabal/darcs 来找到我需要的东西时,我发现你的选择几乎无关紧要。虽然我更喜欢 Arch,但 Ubuntu、Fedora(或上面提到的其他一些发行版)都可以。

Actually you don't have to choose a particular one as long as the one you use provides at least packages of one of the available Haskell interpreters/compilers (Hugs, GHC, etc.) AND cabal/darcs (you need one of them to pick some useful libs/tools from the huge HackageDB or darcs repos). I used to consider the same question but later when I know how to use cabal/darcs to find what I need I get that your choice is almost irrelevant. Though I prefer Arch, Ubuntu, Fedora (or some other distro people mentioned above) will do.

来日方长 2024-08-15 09:16:08

关于 Debian 和Ubuntu,你可以很容易地安装Haskell..
你只需在终端上输入一些命令,剩下的事情它就会完成。

只需点击这个链接,它是关于“Linux 上的 Haskell 安装”的。
该链接仅指向我的博客..我认为这会有所帮助..

http://akashjagdhane.blogspot.in/2013/02/installing-all-packages-of-haskell-so.html

on Debian & Ubuntu, you can install Haskell very easily..
You just have to type some command onto the terminal, and it will do the rest..

just follow this link, it is about "Haskell installation on linux"..
the link is to my blog only.. i think it will be helpful..

http://akashjagdhane.blogspot.in/2013/02/installing-all-packages-of-haskell-so.html

注定孤独终老 2024-08-15 09:16:08
  • Fedora 通常包含更多最新的[前沿]软件。它包含与 centos 相同的工具(yum、rpms 等),因此如果您熟悉 CentOS,可能会更自然。
  • MintUbuntu。这是我最喜欢的发行版 ATM。
  • Fedora typically contains more up to date [bleeding edge] software. It contains the same tools as centos (yum, rpms, etc), so it might be more natural if you are familiar with CentOS.
  • Mint is an exceptionally good derivative of Ubuntu. This is my favorite distro ATM.
予囚 2024-08-15 09:16:08

我正在学习 Haskell,并且正在使用 Ubuntu,它非常好且稳定。

问候。

I'm learning Haskell and i'm using Ubuntu, it's very good and stable.

Regards.

半夏半凉 2024-08-15 09:16:08

通常,存储库面向“一般”情况,而不是高端用户。通过根据您自己的所有需求从源代码构建 ghc,您可能会获得更多好处。

您可能想要检查非标准存储库,看看其他 Haskell 爱好者是否已经为您完成了这项工作。

Typically the repositories are geared toward a "general" case, rather than a high end user. You may get more benefit by building ghc from source with all your own requirements.

You might want to check around to non-standard repositories, to see if other Haskell affectionados have already done the work for you.

芯好空 2024-08-15 09:16:08

这取决于你的机器有多少内存。
人们在具有 512MB RAM 和小型交换分区的计算机(例如 EeePC 或 VPS/VDS 计算机)上使用 GHC 时会遇到问题(来自 host1free.com,fe)。

如果你的 RAM 小于 1GB,那么我建议你在 Gentoo 上使用 splitobjs=NO 编译 GHC(以及 Gentoo 对于 RAM 为 512Mb 或更少的机器自动执行此操作)。否则,您可以坚持使用 Archlinux 或您喜欢的任何其他 Linux 发行版。

HaskellWiki 有一个专门介绍流行的 Linux 发行版及其 Haskell 支持渠道的页面。

It depends on how much memory your machine has.
People face problems with GHC on machines with 512MB RAM and small swap partitions such as EeePC or VPS/VDS machines (by host1free.com, f.e.).

If you have less than 1GB RAM then I would recommend you to compile GHC on Gentoo with splitobjs=NO (and Gentoo does this automatically for machines with 512Mb of RAM or less). Otherwise you can stick with Archlinux or any other Linux distribution of your preference.

HaskellWiki has a page devoted to rife Linux Distributions and their Haskell support channels.

鸩远一方 2024-08-15 09:16:08

我发现 Gentoo 上的 Haskell 支持非常出色。

无论此处发布了有关 Gentoo 的过时信息,当前的 Gentoo 树都包含 2014.2 Haskell 平台。

I found Haskell support on Gentoo excellent.

Whatever outdated information about Gentoo has been posted here, the current Gentoo tree includes the 2014.2 Haskell platform.

  • There is a page on the Gentoo wiki with very clear instructions. I find the Arch wiki page quite confusing in comparison.
  • Installation of Haskell packages is done with the Gentoo package manager, Portage. It's much more convenient to use than cabal and will prevent a cabal hell.
  • If you activate the Haskell Overlay, you'll be able to install most packages from Hackage.
  • It's next-to-trivial to install packages that are not in the Gentoo tree or the Haskell overlay, using Hackport. It creates a Gentoo package from a Haskell package, which you can then install on your system like any other package.
  • A tool called haskell-updater ensures that all your Haskell packages have compatible versions.
  • There is an IRC channel, #gentoo-haskell, in which you'll get help with all Gentoo-specific Haskell problems.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文