Hoogle Search
Within LTS Haskell 24.34 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
Exact real arithmetic using Centred Dyadic Approximations Please see https://github.com/michalkonecny/cdar/tree/mBound#readme
-
A library for writing CGI programs This is a Haskell library for writing CGI programs.
-
Some extra kit for Chans Please see the README on Github at https://github.com/athanclark/chan#readme
-
Lazy infinite streams with O(1) indexing and applications for memoization There are plenty of memoizing libraries on Hackage, but they usually fall into two categories:
- Store cache as a flat array, enabling us to obtain cached values in O(1) time, which is nice. The drawback is that one must specify the size of the array beforehand, limiting an interval of inputs, and actually allocate it at once.
- Store cache as a lazy binary tree. Thanks to laziness, one can freely use the full range of inputs. The drawback is that obtaining values from a tree takes logarithmic time and is unfriendly to CPU cache, which kinda defeats the purpose.
- memoization of recursive functions and recurrent sequences,
- memoization of functions of several, possibly signed arguments,
- efficient memoization of boolean predicates.
-
Fast AES cipher implementation with advanced mode of operations Fast AES cipher implementation with advanced mode of operations. The modes of operations available are ECB (Electronic code book), CBC (Cipher block chaining), CTR (Counter), XTS (XEX with ciphertext stealing), GCM (Galois Counter Mode). The AES implementation uses AES-NI when available (on x86 and x86-64 architecture), but fallback gracefully to a software C implementation. The software implementation uses S-Boxes, which might suffer for cache timing issues. However do notes that most other known software implementations, including very popular one (openssl, gnutls) also uses similar implementation. If it matters for your case, you should make sure you have AES-NI available, or you'll need to use a different implementation.
-
Fast RC4 cipher implementation Fast RC4 cipher implementation
-
Circular fixed-sized mutable vectors Please see the README at https://github.com/dschrempf/circular#readme
-
Clash: a functional hardware description language - Prelude library Clash is a functional hardware description language that borrows both its syntax and semantics from the functional programming language Haskell. The Clash compiler transforms these high-level descriptions to low-level synthesizable VHDL, Verilog, or SystemVerilog. Features of Clash:
- Strongly typed, but with a very high degree of type inference, enabling both safe and fast prototyping using concise descriptions.
- Interactive REPL: load your designs in an interpreter and easily test all your component without needing to setup a test bench.
- Higher-order functions, with type inference, result in designs that are fully parametric by default.
- Synchronous sequential circuit design based on streams of values, called Signals, lead to natural descriptions of feedback loops.
- Support for multiple clock domains, with type safe clock domain crossing.
- Prelude library containing datatypes and functions for circuit design
- Import Clash.Prelude
- Alternatively, if you want to explicitly route clock and reset ports, for more straightforward multi-clock designs, you can import the Clash.Explicit.Prelude module. Note that you should not import Clash.Prelude and Clash.Explicit.Prelude at the same time as they have overlapping definitions.
package
classy-prelude-conduit classy-prelude together with conduit functions See docs and README at http://www.stackage.org/package/classy-prelude-conduit
-
Generic types and functions for columnar encoding and decoding The colonnade package provides a way to talk about columnar encodings and decodings of data. This package provides very general types and does not provide a way for the end-user to actually apply the columnar encodings they build to data. Most users will also want to one a companion packages that provides (1) a content type and (2) functions for feeding data into a columnar encoding:
- lucid-colonnade for lucid html tables
- blaze-colonnade for blaze html tables
- reflex-dom-colonnade for reactive `reflex-dom` tables
- yesod-colonnade for yesod widgets
- siphon for encoding and decoding CSVs