Hoogle Search

Within LTS Haskell 24.4 (ghc-9.10.2)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. package zip-archive

    Library for creating and modifying zip archives. The zip-archive library provides functions for creating, modifying, and extracting files from zip archives. The zip archive format is documented in http://www.pkware.com/documents/casestudies/APPNOTE.TXT. Certain simplifying assumptions are made about the zip archives: in particular, there is no support for strong encryption, zip files that span multiple disks, ZIP64, OS-specific file attributes, or compression methods other than Deflate. However, the library should be able to read the most common zip archives, and the archives it produces should be readable by all standard unzip programs. Archives are built and extracted in memory, so manipulating large zip files will consume a lot of memory. If you work with large zip files or need features not supported by this library, a better choice may be zip, which uses a memory-efficient streaming approach. However, zip can only read and write archives inside instances of MonadIO, so zip-archive is a better choice if you want to manipulate zip archives in "pure" contexts. As an example of the use of the library, a standalone zip archiver and extracter is provided in the source distribution.

  2. package ad

    Automatic Differentiation Forward-, reverse- and mixed- mode automatic differentiation combinators with a common API. Type-level "branding" is used to both prevent the end user from confusing infinitesimals and to limit unsafe access to the implementation details of each Mode. Each mode has a separate module full of combinators.

    • Numeric.AD.Mode.Forward provides basic forward-mode AD. It is good for computing simple derivatives.
    • Numeric.AD.Mode.Reverse uses benign side-effects to compute reverse-mode AD. It is good for computing gradients in one pass. It generates a Wengert list (linear tape) using Data.Reflection.
    • Numeric.AD.Mode.Kahn uses benign side-effects to compute reverse-mode AD. It is good for computing gradients in one pass. It generates a tree-like tape that needs to be topologically sorted in the end.
    • Numeric.AD.Mode.Sparse computes a sparse forward-mode AD tower. It is good for higher derivatives or large numbers of outputs.
    • Numeric.AD.Mode.Tower computes a dense forward-mode AD tower useful for higher derivatives of single input functions.
    • Numeric.AD computes using whichever mode or combination thereof is suitable to each individual combinator.
    While not every mode can provide all operations, the following basic operations are supported, modified as appropriate by the suffixes below:
    • grad computes the gradient (partial derivatives) of a function at a point.
    • jacobian computes the Jacobian matrix of a function at a point.
    • diff computes the derivative of a function at a point.
    • du computes a directional derivative of a function at a point.
    • hessian computes the Hessian matrix (matrix of second partial derivatives) of a function at a point.
    The following suffixes alter the meanings of the functions above as follows:
    • ' -- also return the answer
    • With lets the user supply a function to blend the input with the output
    • F is a version of the base function lifted to return a Traversable (or Functor) result
    • s means the function returns all higher derivatives in a list or f-branching Stream
    • T means the result is transposed with respect to the traditional formulation.
    • 0 means that the resulting derivative list is padded with 0s at the end.
    • NoEq means that an infinite list of converging values is returned rather than truncating the list when they become constant

  3. package aeson-qq

    JSON quasiquoter for Haskell aeson-qq provides a JSON quasiquoter for Haskell. This package exposes the function aesonQQ that compile-time converts a string representation of a JSON value into a Data.Aeson.Value. aesonQQ has the signature

    aesonQQ :: QuasiQuoter
    
    Consult the README for documentation: https://github.com/sol/aeson-qq#readme

  4. package asn1-encoding

    ASN1 data reader and writer in RAW, BER and DER forms ASN1 data reader and writer in raw form with supports for high level forms of ASN1 (BER, and DER).

  5. package boring

    Boring and Absurd types

    • Boring types are isomorphic to ().
    • Absurd types are isomorphic to Void.
    See What does () mean in Haskell -answer by Conor McBride

  6. package co-log-core

    Composable Contravariant Comonadic Logging Library This package provides core types and functions to work with the LogAction data type which is both simple and powerful.

    newtype LogAction m msg = LogAction
    { unLogAction :: msg -> m ()
    }
    
    The ideas behind this package are described in the following blog post: See the following packages for different implementations based on co-log-core:
    • co-log: taggless final implementations.
    • co-log-polysemy: extensible effects implementation based on polysemy.

  7. package cryptohash-sha256

    Fast, pure and practical SHA-256 implementation A practical incremental and one-pass, pure API to the SHA-256 cryptographic hash algorithm according to FIPS 180-4 with performance close to the fastest implementations available in other languages. The core SHA-256 algorithm is implemented in C and is thus expected to be as fast as the standard sha256sum(1) tool; for instance, on an Intel Core i7-3770 at 3.40GHz this implementation can compute a SHA-256 hash over 230 MiB of data in under one second. (If, instead, you require a pure Haskell implementation and performance is secondary, please refer to the SHA package.) Additionally, this package provides support for

    conforming to RFC6234, RFC4231, RFC5869, et al..

    Relationship to the cryptohash package and its API

    This package has been originally a fork of cryptohash-0.11.7 because the cryptohash package had been deprecated and so this package continues to satisfy the need for a lightweight package providing the SHA-256 hash algorithm without any dependencies on packages other than base and bytestring. The API exposed by cryptohash-sha256-0.11.*'s Crypto.Hash.SHA256 module is guaranteed to remain a compatible superset of the API provided by the cryptohash-0.11.7's module of the same name. Consequently, this package is designed to be used as a drop-in replacement for cryptohash-0.11.7's Crypto.Hash.SHA256 module, though with a clearly smaller footprint by almost 3 orders of magnitude.

  8. package deriving-compat

    Backports of GHC deriving extensions deriving-compat provides Template Haskell functions that mimic deriving extensions that were introduced or modified in recent versions of GHC. Currently, the following typeclasses/extensions are covered:

    • Deriving Bounded
    • Deriving Enum
    • Deriving Ix
    • Deriving Eq
    • Deriving Ord
    • Deriving Read
    • Deriving Show
    • DeriveFoldable
    • DeriveFunctor
    • DeriveTraversable
    • GeneralizedNewtypeDeriving (with GHC 8.2 or later)
    • DerivingVia (with GHC 8.2 or later)
    See the Data.Deriving module for a full list of backported changes. In addition, deriving-compat also provides some additional deriving functionality that has not yet been merged into upstream GHC. Aside from the GHC deriving extensions mentioned above, deriving-compat also permits deriving instances of classes in the Data.Functor.Classes module, covering the Eq1, Eq2, Ord1, Ord2, Read1, Read2, Show1, and Show2 classes. This extra functionality is outside of the main scope of deriving-compat, as it does not backport extensions that exist in today's GHC. Nevertheless, the underlying Template Haskell machinery needed to derive Eq and friends extends very naturally to Eq1 and friends, so this extra functionality is included in deriving-compat as a convenience. Note that some recent GHC typeclasses/extensions are not covered by this package:
    • DeriveDataTypeable
    • DeriveGeneric, which was introducted in GHC 7.2 for deriving Generic instances, and modified in GHC 7.6 to allow derivation of Generic1 instances. Use Generics.Deriving.TH from generic-deriving to derive Generic(1) using Template Haskell.
    • DeriveLift, which was introduced in GHC 8.0 for deriving Lift instances. Use Language.Haskell.TH.Lift from th-lift to derive Lift using Template Haskell.
    • The Bifunctor typeclass, which was introduced in GHC 7.10, as well as the Bifoldable and Bitraversable typeclasses, which were introduced in GHC 8.2. Use Data.Bifunctor.TH from bifunctors to derive these typeclasses using Template Haskell.

  9. package formatting

    Combinator-based type-safe formatting (like printf() or FORMAT) Combinator-based type-safe formatting (like printf() or FORMAT), modelled from the HoleyMonoids package. See the README at https://github.com/AJChapman/formatting#readme for more info.

  10. package generic-lens

    Generically derive traversals, lenses and prisms. This library uses GHC.Generics to derive efficient optics (traversals, lenses and prisms) for algebraic data types in a type-directed way, with a focus on good type inference and error messages when possible. The library exposes a van Laarhoven interface. For an alternative interface, supporting an opaque optic type, see generic-optics.

Page 36 of many | Previous | Next