Hoogle Search
Within LTS Haskell 24.35 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
An orphan Eq instance for ErrorCall Prior to base-4.7.0.0 there was no Eq instance for ErrorCall. This package provides an orphan instance.
-
`bracket`-like functions for `ExceptT` over `IO` monad. Please see the README on GitHub at https://github.com/A1-Triard/errors-ext#readme
-
A monad for expressing SAT or QSAT problems using observable sharing. A monad for expressing SAT or QSAT problems using observable sharing. For example, we can express a full-adder with:
full_adder :: Bit -> Bit -> Bit -> (Bit, Bit) full_adder a b cin = (s2, c1 || c2) where (s1,c1) = half_adder a b (s2,c2) = half_adder s1 cin
half_adder :: Bit -> Bit -> (Bit, Bit) half_adder a b = (a `xor` b, a && b)
Longer Examples Included are a couple of examples included with the distribution. Neither are as fast as a dedicated solver for their respective domains, but they showcase how you can solve real world problems involving 10s or 100s of thousands of variables and constraints with ersatz.ersatz-sudoku
% time ersatz-sudoku Problem: ┌───────┬───────┬───────┐ │ 5 3 │ 7 │ │ │ 6 │ 1 9 5 │ │ │ 9 8 │ │ 6 │ ├───────┼───────┼───────┤ │ 8 │ 6 │ 3 │ │ 4 │ 8 3 │ 1 │ │ 7 │ 2 │ 6 │ ├───────┼───────┼───────┤ │ 6 │ │ 2 8 │ │ │ 4 1 9 │ 5 │ │ │ 8 │ 7 9 │ └───────┴───────┴───────┘ Solution: ┌───────┬───────┬───────┐ │ 5 3 4 │ 6 7 8 │ 9 1 2 │ │ 6 7 2 │ 1 9 5 │ 3 4 8 │ │ 1 9 8 │ 3 4 2 │ 5 6 7 │ ├───────┼───────┼───────┤ │ 8 5 9 │ 7 6 1 │ 4 2 3 │ │ 4 2 6 │ 8 5 3 │ 7 9 1 │ │ 7 1 3 │ 9 2 4 │ 8 5 6 │ ├───────┼───────┼───────┤ │ 9 6 1 │ 5 3 7 │ 2 8 4 │ │ 2 8 7 │ 4 1 9 │ 6 3 5 │ │ 3 4 5 │ 2 8 6 │ 1 7 9 │ └───────┴───────┴───────┘ ersatz-sudoku 1,13s user 0,04s system 99% cpu 1,179 total
ersatz-regexp-grid
This solves the "regular crossword puzzle" (grid.pdf) from the 2013 MIT mystery hunt.% time ersatz-regexp-grid
SPOILERersatz-regexp-grid 2,45s user 0,05s system 99% cpu 2,502 total
package
essence-of-live-coding-warp General purpose live coding framework essence-of-live-coding is a general purpose and type safe live coding framework. You can run programs in it, and edit, recompile and reload them while they're running. Internally, the state of the live program is automatically migrated when performing hot code swap. The library also offers an easy to use FRP interface. It is parametrized by its side effects, separates data flow cleanly from control flow, and allows to develop live programs from reusable, modular components. There are also useful utilities for debugging and quickchecking. This library contains a single-threaded interface to the WARP web server. WAI applications can be run this way.
-
Opcode types for Ethereum Virtual Machine (EVM) This library provides opcode types for the Ethereum Virtual Machine.
-
Efficient exact computation of combinatoric functions. Efficient exact computation of combinatoric functions.
-
Exception type hierarchy with TemplateHaskell see sample code in samples/
-
Exception monad transformer instances for mtl classes. This package provides exception monad transformer instances for the classes defined by mtl.
-
Provides the SHA1 hash of the program executable See README.md
-
Customizable quasiquote interpolation See https://hackage.haskell.org/package/exon/docs/Exon.html