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.

  1. package quadratic-irrational

    An implementation of quadratic irrationals A library for exact computation with quadratic irrationals with support for exact conversion from and to (potentially periodic) simple continued fractions. A quadratic irrational is a number that can be expressed in the form

    (a + b √c) / d
    
    where a, b and d are integers and c is a square-free natural number. Some examples of such numbers are A simple continued fraction is a number expressed in the form
    a + 1/(b + 1/(c + 1/(d + 1/(e + …))))
    
    or alternatively written as
    [a; b, c, d, e, …]
    
    where a is an integer and b, c, d, e, … are positive integers. Every finite SCF represents a rational number and every infinite, periodic SCF represents a quadratic irrational.
    3.5      = [3; 2]
    (1+√5)/2 = [1; 1, 1, 1, …]
    √2       = [1; 2, 2, 2, …]
    

  2. package queue-sheet

    queue sheet utility This package provides a utility for creating queue sheets. Please see the README on GitHub at https://github.com/ExtremaIS/queue-sheet-haskell#readme.

  3. package queues

    Queue data structures. Queue data structures, as described in

    • Okasaki, Chris. "Simple and efficient purely functional queues and deques." Journal of functional programming 5.4 (1995): 583-592.
    • Okasaki, Chris. Purely Functional Data Structures. Diss. Princeton University, 1996.
    A queue has a "back" where new elements are enqueued, and a "front" where elements are dequeued in the order that they were enqueued (first in, first out). The queues provided in this library also support an "enqueue at front" operation, because the underlying representations happen to support it, so you might technically refer to these data structures as output-restricted deques. In this library, it is helpful to think of the "front" being on the left, because (though the direction is arbitrary) we are consistent throughout, where it matters:
    • List conversion functions associate the head of a list with the front of a queue.
    • The append operator xs <> ys creates a queue with xs in front of ys.
    • The Show instances draw the front of the queue on the left.
    Under "ephemeral" (or "single-threaded", or "linear") usage, wherein one does not need to refer to an old version of a data structure after mutating it:
    • EphemeralQueue is 2.5x faster than and allocates 0.50x as much memory as Queue.
    • Queue is 2.6x faster than and allocates 0.40x as much memory as Seq (from containers).
    (These numbers vary from benchmark to benchmark and machine to machine. Always perform your own experiments!) While it is certainly common to use a queue ephemerally, it is unusual for a Haskell data structure to require ephemeral usage to achieve its stated bounds. A refactoring or change in requirements might cause surprising changes in performance. That is why EphemeralQueue has a longer name and module name. When in doubt, use Queue.

  4. package quickbench

    quick & easy benchmarking of command-line programs quickbench produces very simple output (elapsed seconds), as quickly as possible (running commands just once by default), and tabulates results from multiple executables. I find it very useful for quick and dirty, exploratory, and comparative measurements that you can understand at a glance. Please see the readme for more.

  5. package quickcheck-dynamic

    A library for stateful property-based testing Please see the README on GitHub at https://github.com/input-output-hk/quickcheck-dynamic#readme

  6. package quickcheck-state-machine

    Test monadic programs using state machine based models See README at https://github.com/stevana/quickcheck-state-machine#readme

  7. package quickcheck-transformer

    A GenT monad transformer for QuickCheck library. A fork of QuickCheck-GenT that works for older GHC versions and uses the Test module folder like QuickCheck.

  8. package radix-tree

    Radix trees Radix and PATRICIA trees, both spine-strict and spine-lazy. See the README for a brief overview of the data structures included in this package.

  9. package rainbow

    Print text to terminal with colors and effects Please see README.md

  10. package ral

    Random access lists This package provides ordinary random access list, RAList, and also a length indexed variant, RAVec. The data structure allows fast cons-operation (like ordinary list) but also fast random access (like non-functional arrays). For lens or optics support see ral-lens and ral-optics packages respectively.

    Similar packages

    These packages don't provide length-indexed variants, and their RAList has opaque structure.

Page 234 of many | Previous | Next