Haskell Control

Open-source Haskell projects categorized as Control | Edit details

Top 23 Haskell Control Projects

  • GitHub repo rio-orphans

    A standard library for Haskell (by commercialhaskell)

    Project mention: Haskell: The Bad Parts, part 2 (2020) | news.ycombinator.com | 2021-02-09

    > Can we move to a better standard lib? Here Snoyman has put forward a great effort by releasing his classy-prelude, but iirc he also stopped using it.

    He mentioned https://github.com/commercialhaskell/rio in the 1st article, it's interesting, I wasn't aware of it. (I am using classy-prelude but I might try it out.)

  • GitHub repo transient

    A full stack, reactive architecture for general purpose programming. Algebraic and monadically composable primitives for concurrency, parallelism, event handling, transactions, multithreading, Web, and distributed computing with complete de-inversion of control (No callbacks, no blocking, pure state)

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo fused-effects

    A fast, flexible, fused effect system for Haskell

    Project mention: Haskell doesn't make sense without pure functions | reddit.com/r/haskell | 2021-10-02
  • GitHub repo pipes

    Compositional pipelines

    Project mention: Introduce BIO: A Simple Streaming Abstraction | reddit.com/r/haskell | 2021-04-27

    For example, the author of Pipes has provided this: https://github.com/Gabriel439/Haskell-Pipes-Library/blob/master/laws.md

  • GitHub repo funflow

    Functional workflows

    Project mention: Experiences with workflow managers implemented in Haskell (funflow, porcupine, bioshake, ?) | reddit.com/r/haskell | 2021-10-03

    Funflow: https://github.com/tweag/funflow

  • GitHub repo machines

    Networks of composable stream transducers

  • GitHub repo recursion-schemes

    Generalized bananas, lenses and barbed wire

    Project mention: Beautiful ideas in programming: generators and continuations | news.ycombinator.com | 2021-08-03

    It’s also trivial and easy in Haskell — you just need an instance of `Foldable` or `Traversable` on your collection, and then you can fold or traverse it in a configurable way. Or for recursive structures, use https://hackage.haskell.org/package/recursion-schemes. Or even just pass a traversal function as an argument for maximum flexibility.

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo mtl

    The Monad Transformer Library

  • GitHub repo record

    Anonymous records

  • GitHub repo capability

    Extensional capabilities and deriving combinators

    Project mention: Haskell doesn't make sense without pure functions | reddit.com/r/haskell | 2021-10-02
  • GitHub repo freer-simple

    A friendly effect system for Haskell

    Project mention: A solid GUI Framework for Haskell? | reddit.com/r/haskell | 2021-06-27

    Why do you need a GUI library, if you can write your application using extensible effects frameworks, just choose any and enjoy!

  • GitHub repo extensible-effects

    Extensible Effects: An Alternative to Monad Transformers

    Project mention: A solid GUI Framework for Haskell? | reddit.com/r/haskell | 2021-06-27

    Why do you need a GUI library, if you can write your application using extensible effects frameworks, just choose any and enjoy!

  • GitHub repo auto

    Haskell DSL and platform providing denotational, compositional api for discrete-step, locally stateful, interactive programs, games & automations. http://hackage.haskell.org/package/auto (by mstksg)

  • GitHub repo hask

    Category theory for Haskell with a lens flavor (you need GHC 7.8.3, not 7.8.2 to build this!)

  • GitHub repo ComonadSheet

    A library for expressing "spreadsheet-like" computations with absolute and relative references, using fixed-points of n-dimensional comonads.

    Project mention: Comonad Question | reddit.com/r/haskell | 2021-10-15

    Another expansion on that intuition is https://github.com/kwf/ComonadSheet with a really enjoyable video linked in the readme which expands on the thinking of focusing on some container, except in that case with the notion of values depending on values elsewhere in some multidimensional grid, like a spreadsheet. In fact Kenneth's spreadsheet actually has time as one of its dimensions. Amazing.

  • GitHub repo transient-universe

    A Cloud monad based on transient for the creation of Web and reactive distributed applications that are fully composable, where Web browsers are first class nodes in the cloud

  • GitHub repo free

    free monads

    Project mention: [ANN] merge, cropty, and trust-chain | reddit.com/r/haskell | 2021-09-18

    https://hackage.haskell.org/package/trust-chain is a little more out there, but the most interesting to me personally. There are two ways to think about it, each useful to different audiences. On one hand, it can be seen as a tree where the node structure and leaf type are type level parameters, and every internal node is signed by the private key corresponding to the public key at that node. In Haskell, it can be seen as a free monad where every layer is signed in that same way.

  • GitHub repo foldl

    Composable, streaming, and efficient left folds

  • GitHub repo safe-exceptions

    Safe, consistent, and easy exception handling

    Project mention: Async Control Flow | reddit.com/r/haskell | 2021-03-21

    In safe-exception and uniftio it was decided to rethrow the original exception exactly because they decided to use uninterruptibleMask, see here for details.

  • GitHub repo unliftio

    The MonadUnliftIO typeclass for unlifting monads to IO

    Project mention: Is `MonadBaseControl` dead? | reddit.com/r/haskell | 2021-06-21

    Any way quoting u/snoyberg : https://github.com/fpco/unliftio/issues/17#issuecomment-363655106

  • GitHub repo abstract-par

  • GitHub repo distributed-fork

    A distributed data processing framework in Haskell.

  • GitHub repo these

    An either-or-both data type, with corresponding hybrid error/writer monad transformer.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-10-15.


What are some of the best open-source Control projects in Haskell? This list will help you:

Project Stars
1 rio-orphans 723
2 transient 624
3 fused-effects 529
4 pipes 444
5 funflow 339
6 machines 319
7 recursion-schemes 278
8 mtl 264
9 record 235
10 capability 196
11 freer-simple 194
12 extensible-effects 172
13 auto 170
14 hask 159
15 ComonadSheet 142
16 transient-universe 139
17 free 138
18 foldl 130
19 safe-exceptions 123
20 unliftio 120
21 abstract-par 118
22 distributed-fork 111
23 these 108
Find remote jobs at our new job board 99remotejobs.com. There are 34 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives