Hoogle Search
Within LTS Haskell 24.49 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
Constructive abstract algebra Constructive abstract algebra
-
Recurse while a predicate is satisfied Recurse while a predicate is satisfied
-
Bindings to the ALSA simple mixer API. This package provides bindings to the ALSA simple mixer API.
-
Use vectors instead of lists for many and some Use vectors instead of lists for many and some
-
Handy functions when using transformers. Useful monads built on top of transformers. Please see README.md
-
Simple gloss renderer for apecs Simple 2D gloss-based rendering for apecs. Intended for prototyping.
-
Lift a binary, non-decreasing function onto ordered lists and order the output Please see the README on GitHub at https://github.com/pgujjula/apply-merge#readme
-
Newtype wrappers for approximate equality The purpose of this module is to provide newtype wrappers that allow one to effectively override the equality operator of a value so that it is approximate rather than exact. The wrappers use type annotations to specify the tolerance; the Digits type constructor has been provided for specifying the tolerance using type-level natural numbers. Instances for all of the classes in the numerical hierarchy have been provided for the wrappers, so the wrapped values can mostly be used in the same way as the original values. (In fact, most of the time one doesn't even have to wrap the starting values, since expressions such as (1+sqrt 2/3) are automatically wrapped thanks to the fromIntegral method of the Num typeclass.) See the documentation for Data.Eq.Approximate for more detailed information on how to use this package. New in version 1.1: Added explicit Show constraints to the Show instances, as the Num class in the newest version of GHC (wisely) no longer includes Show as a constraint.
-
Memoization combinators using arrays for finite sub-domains of functions Memoization combinators are great for providing high-performance Haskell programs, but they can be even faster if memoization is performed on a finite, discrete domain since an array can then be used to store results. This package provides various combinators for doing just this, including also combinators for quanitzing and discretizing Float/Double-valued functions. Example:
fib' :: (Int -> Int) -> Int -> Int fib' _ 0 = 1 fib' _ 1 = 1 fib' rec n = rec (n - 1) + rec (n - 2) fib :: Int -> Int fib = arrayMemoFix (0, 1000) fib'
-
Extra functions for Control.Arrow Extra functions for Control.Arrow