haskell.nix VS polysemy

Compare haskell.nix vs polysemy and see what are their differences.

haskell.nix

Alternative Haskell Infrastructure for Nixpkgs (by input-output-hk)

polysemy

:gemini: higher-order, no-boilerplate monads (by polysemy-research)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
haskell.nix polysemy
15 7
518 1,019
1.7% 0.2%
9.7 5.5
about 17 hours ago 9 days ago
Nix Haskell
Apache License 2.0 BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

haskell.nix

Posts with mentions or reviews of haskell.nix. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-12-29.
  • Why does Nix have Haskell packages that are incompatible with GHC for a given version?
    3 projects | /r/haskell | 29 Dec 2022
    I'm not a great haskeller but I found haskell.nix better for Haskell projects, like the commenter on Discourse suggested. I've had a few issued regarding package versions with nixpkgs that haskell.nix solved.
  • Simple GHC stack for a novice
    6 projects | /r/haskell | 17 Oct 2022
    FWIW, there's also libraries like haskell.nix that solve the caching problem.
  • Any up-to-date cross-compiling methods for Raspberry Pi?
    3 projects | /r/haskell | 20 Sep 2022
    I would try haskell.nix.
  • Take the Nix Pill
    4 projects | /r/linuxmemes | 8 Jul 2022
    If you want to hurt your brain, check out haskell.nix. That's some good stuff right there ^^
  • Trying to build a statically linked binary against glibc (Linux)
    3 projects | /r/haskell | 3 Jul 2022
    The haskell.nix framework is good for this.
  • GHC 9.4.1 Windows changes
    2 projects | /r/haskell | 28 Jun 2022
    One cool thing is that this will enable GHC builds using ucrt instead of vscrt in the future. Concretely, together with NixOS/nixpkgs#171418 and its follow-up NixOS/nixpkgs#173498), this will e.g. allow haskell.nix to upgrade to a newer wine pin for TH cross compilation: https://github.com/input-output-hk/haskell.nix/blob/dd13e822529ae5342494969bce8a457522a60100/overlays/wine.nix
  • Memory from finished thread is not getting reclaimed
    7 projects | /r/haskell | 9 Sep 2021
    If you are somewhat comfortable with nix: https://github.com/input-output-hk/haskell.nix supports GHCJS 8.10.x (in particular 8.10.7).
  • What's all the hype with Nix?
    9 projects | /r/haskell | 2 Jun 2021
    I also prefer stack for development, but I use nix to deploy to production. This way, I can install ad-hoc system dependencies locally and play with them during development as well as enjoy the bits and pieces of Haskell ergonomics stack affords, and once I'm happy with what I have, I "nixify" those dependencies as part of the project nix configuration and send them to production without fear. I use IOHK's excellent haskell.nix infrastructure to nixify my stack-based Haskell project, which makes it trivial to maintain a nix configuration that's always in sync with my stack configuration.
  • Monthly Hask Anything (June 2021)
    16 projects | /r/haskell | 2 Jun 2021
    And stuff like haskell.nix is supposed to let you configure things with stack or cabal or whatever tool you find most convenient, and let nix do the rest.
  • Another Haskell and Nix setup
    3 projects | /r/haskell | 7 May 2021
    /u/ItsNotMineISwear mentioned haskell.nix, which does generate a Haskell package set based on either a stack.yaml file, or the Cabal solver. This would solve some of your problems, but then possibly introduce others.

polysemy

Posts with mentions or reviews of polysemy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-02.
  • Functional Declarative Design: A Comprehensive Methodology for Statically-Typed Functional Programming Languages
    4 projects | /r/haskell | 2 Jun 2023
    Thirdly, composing arbitrary effects without losing state is really, really difficult. Things are fine when you limit yourself to State and Reader, sure, but once you start with nondeterminism you’ll discover it’s shockingly easy to produce behaviors that are baffling unless you’ve spent a preposterous amount of time thinking about this stuff. (I’ve been bitten in prod by silent state-dropping bugs, and rarely have I been more flummoxed.) Consider this example, which produces silent changes in the semantics of <|> depending on whether you use it inside or outside of a higher-order effect. Every single effect library (besides the still-unreleased eff) gets certain combinations of effects + nondeterminism wrong. You could make the argument that most people don’t use nondeterministic monads, but eDSLs really shine when you have access to them, as you can turn a concrete interpreter to an abstract one fairly easily.
  • Introduction to Doctests in Haskell
    6 projects | /r/haskell | 19 Apr 2022
    Looking for a few projects that make use of it, I found accelerate, hawk, polysemy and pretty-simple, so I'll be interested to poke around in their code and see how they have things set up.
  • ReaderT pattern is just extensible effects
    2 projects | /r/haskell | 3 Feb 2022
    Right, I think I'll just give it a shot to see. Polysemy is nice but I'm still having trouble getting what I want out of it (which may very well be entirely a fault of my own understanding)
  • Where's more discussion of the designs of effect systems?
    4 projects | /r/ProgrammingLanguages | 17 Nov 2021
    Languages such as Koka only support algebraic effects, not scoping operations such as catch and listen. The Effect Handlers in Scope paper introduces scoping operations, which lead to the Haskell libraries fused-effects and polysemy, but they turned out to have some weird semantics. eff is her effort to fix that.
  • Monthly Hask Anything (June 2021)
    16 projects | /r/haskell | 2 Jun 2021
  • Structuring Code with ZIO &amp; ZLayers
    3 projects | /r/scala | 3 Mar 2021
    *But I'm not terribly well versed in Scala's other DI offerings. I came from Haskell and didn't find anything in Scala that clicked with me until I found ZIO. It reminded me a lot of my favorite way of writing Haskell programs (https://github.com/polysemy-research/polysemy)—albeit with a completely different implementation.

What are some alternatives?

When comparing haskell.nix and polysemy you can also consider the following projects:

Cabal - Official upstream development repository for Cabal and cabal-install

fused-effects - A fast, flexible, fused effect system for Haskell

purescript - A strongly-typed language that compiles to JavaScript

freer-simple - A friendly effect system for Haskell

Exercism - Scala Exercises - Crowd-sourced code mentorship. Practice having thoughtful conversations about code.

ast-monad - A library for constructing AST by using do-notation

nix-doom-emacs - doom-emacs packaged for Nix

static-haskell-nix - easily build most Haskell programs into fully static Linux executables

ghc - Mirror of the Glasgow Haskell Compiler. Please submit issues and patches to GHC's Gitlab instance (https://gitlab.haskell.org/ghc/ghc). First time contributors are encouraged to get started with the newcomers info (https://gitlab.haskell.org/ghc/ghc/wikis/contributing).

frp-zoo - Comparing many FRP implementations by reimplementing the same toy app in each.

nixpkgs - Nix Packages collection & NixOS

eff - 🚧 a work in progress effect system for Haskell 🚧