Hoogle Search
Within LTS Haskell 24.28 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
SQL DDL support and migrations support library for Beam This package provides type classes to allow backends to implement SQL DDL support for beam. This allows you to use beam syntax to write type-safe schema generation code. The package also provides features to introspect beam schemas, and support for automatic generation of migrations in SQL and Haskell formats. This is mostly a low-level support library. Most often, this library is used to write tooling to support DDL manipulation in your project, or to enable migrations support in beam backends.
-
Implementation of the Bech32 cryptocurrency address format (BIP 0173). Implementation of the Bech32 cryptocurrency address format documented in the BIP (Bitcoin Improvement Proposal) 0173.
-
Show, plot and compare benchmark results Generate text reports and graphical charts from the benchmark results generated by gauge or criterion and stored in a CSV file. This tool is especially useful when you have many benchmarks or if you want to compare benchmarks across multiple packages. You can generate many interesting reports including:
- Show individual reports for all the fields measured e.g. time taken, peak memory usage, allocations, among many other fields measured by gauge
- Sort benchmark results on a specified criterion e.g. you may want to see the biggest cpu hoggers or biggest memory hoggers on top
- Across two benchmark runs (e.g. before and after a change), show all the operations that resulted in a regression of more than x% in descending order, so that we can quickly identify and fix performance problems in our application.
- Across two (or more) packages providing similar functionality, show all the operations where the performance differs by more than 10%, so that we can critically analyze the packages and choose the right one.
$ bench-show report results.csv $ bench-show graph results.csv output
report "results.csv" Nothing defaultConfig graph "results.csv" "output" defaultConfig
There are many ways to present the reports, for example, you can show can show % regression from a baseline in descending order textually as follows:(time)(Median)(Diff using min estimator) Benchmark streamly(0)(μs)(base) streamly(1)(%)(-base) --------- --------------------- --------------------- zip 644.33 +23.28 map 653.36 +7.65 fold 639.96 -15.63
To show the same graphically: See the README and the BenchShow.Tutorial module for comprehensive documentation. -
Parsers and printers for bencoded data. Parsers and printers for bencoded data. Bencode (pronounced like B encode) is the encoding used by the peer-to-peer file sharing system BitTorrent for storing and transmitting loosely structured data.
-
Simplify tests where Either or Maybe types are returned from monadic code A small library of convenient functions for writing hspec tests. It simplifies tests where Either, Maybe and other types are returned from monadic code. The README provides usage examples.
-
Parse, format and processing BibTeX files This package allows parsing, formatting and processing of BibTeX files. BibTeX files are databases for literature for the natbib package of the LaTeX typesetting system. The package contains two examples:
- The first example demonstrates the BibTeX parser by generating a publication overview from a .bib file.
- The second example demonstrates the BibTeX generation by producing a large .bib file from the tar archive that cabal-install downloads to your local cabal directory.
cabal install -fbuildExamples bibtex
For the first example see the publications directory of this package. You can start the program and build an example document by runningmake pubs
Technically the program generates a list of custom \nocite commands for the LaTeX package multibib. You can add the custom bibtex field subtype to BibTeX entries for more detailed categorization of an entry. See "publications/publications.bib" for examples. The second example can be executed usingmake hackbib
The file hackage.bib is written to the hackage subdirectory. The hackage-bibtex program reads an uncompressed tar archive from standard input and writes the result bibliography file to standard output. Note that hackage.bib exceeds some limits of standard BibTeX and LaTeX: There are currently much more than 5000 versions of packages, the maximum my BibTeX can handle at once. That is, you can use the bibliography file, but you cannot cite all entries with \nocite*. If there are more than 26 uploads by the same author in a year, the BibTeX style alpha generates identifiers including curly braces which interacts badly with LaTeX's handling of them. If you reduce the Bibliography file to 5000 entries and try to generate an overview of all entries with \nocite, then pdflatex hits its limits:TeX capacity exceeded, sorry [save size=5000]
-
An efficient but limited parser API specialised to bytestrings An efficient but limited parser API specialised to bytestrings
-
Low-level bindings to GLFW OpenGL library Low-level bindings to GLFW (http://www.glfw.org/), an open source, multi-platform library for creating windows with OpenGL contexts and managing input and events. The binding is to GLFW 3.3, released 2019-04-15 (http://www.glfw.org/Version-3.3-released.html http://www.glfw.org/changelog.html). These bindings are too low-level for normal use. For higher-level bindings, see GLFW-b (http://hackage.haskell.org/package/GLFW-b). If you've used GLFW before, you were probably using 2.7.x. There are some significant differences in 3.x.x. Please see the transition guide (http://www.glfw.org/docs/3.3/moving.html).
-
Various bit twiddling and bitwise serialization primitives Various bit twiddling and bitwise serialization primitives.
-
Space efficient set of Word8 and some pre-canned sets useful for parsing HTTP Please see the README on GitHub at https://github.com/nshimaza/bitset-word8#readme