chore: merge protolude as subdirectory src/protolude

This commit is contained in:
Taimoor Zaeem
2026-04-30 14:17:07 +05:00
49 changed files with 11045 additions and 0 deletions
+4
View File
@@ -0,0 +1,4 @@
:set -XNoImplicitPrelude
:set -XOverloadedStrings
:set -isrc
:load Protolude
+38
View File
@@ -0,0 +1,38 @@
name: Cabal CI
on:
pull_request:
types:
- opened
- synchronize
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
ghc: ['9.12.1', '9.10.1', '9.8.2', '9.6.5', '9.4.4', '9.2.6', '9.0.2', '8.10.7', '8.8.4', '8.6.5', '8.4.4', '8.2.2', '8.0.2']
cabal: ['latest', 3.2]
fail-fast: false
env:
CONFIG: "--enable-tests --enable-benchmarks"
steps:
- uses: actions/checkout@v2
# https://github.com/haskell/actions/tree/main/setup
- uses: haskell/actions/setup@v2
id: setup-haskell-cabal
with:
ghc-version: ${{ matrix.ghc }}
cabal-version: ${{ matrix.cabal }}
- run: cabal v2-update
- run: cabal v2-freeze $CONFIG
- uses: actions/cache@v2
with:
path: |
${{ steps.setup-haskell-cabal.outputs.cabal-store }}
dist-newstyle
key: ${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles('cabal.project.freeze') }}
restore-keys: |
${{ runner.os }}-${{ matrix.ghc }}-
- run: cabal v2-build $CONFIG
- run: cabal v2-test $CONFIG
- run: cabal v2-haddock $CONFIG
- run: cabal v2-sdist
+168
View File
@@ -0,0 +1,168 @@
# This GitHub workflow config has been generated by a script via
#
# haskell-ci 'github' 'protolude.cabal'
#
# To regenerate the script (for example after adjusting tested-with) run
#
# haskell-ci regenerate
#
# For more information, see https://github.com/haskell-CI/haskell-ci
#
# version: 0.12.1
#
# REGENDATA ("0.12.1",["github","protolude.cabal"])
#
name: Haskell-CI
on:
- pull_request
jobs:
linux:
name: Haskell-CI - Linux - ${{ matrix.compiler }}
runs-on: ubuntu-18.04
container:
image: buildpack-deps:bionic
continue-on-error: ${{ matrix.allow-failure }}
strategy:
matrix:
include:
- compiler: ghc-7.6.3
allow-failure: false
- compiler: ghc-7.8.4
allow-failure: false
- compiler: ghc-7.10.3
allow-failure: false
fail-fast: false
steps:
- name: apt
run: |
apt-get update
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common
apt-add-repository -y 'ppa:hvr/ghc'
apt-get update
apt-get install -y $CC cabal-install-3.4
env:
CC: ${{ matrix.compiler }}
- name: Set PATH and environment variables
run: |
echo "$HOME/.cabal/bin" >> $GITHUB_PATH
echo "LANG=C.UTF-8" >> $GITHUB_ENV
echo "CABAL_DIR=$HOME/.cabal" >> $GITHUB_ENV
echo "CABAL_CONFIG=$HOME/.cabal/config" >> $GITHUB_ENV
HCDIR=$(echo "/opt/$CC" | sed 's/-/\//')
HCNAME=ghc
HC=$HCDIR/bin/$HCNAME
echo "HC=$HC" >> $GITHUB_ENV
echo "HCPKG=$HCDIR/bin/$HCNAME-pkg" >> $GITHUB_ENV
echo "HADDOCK=$HCDIR/bin/haddock" >> $GITHUB_ENV
echo "CABAL=/opt/cabal/3.4/bin/cabal -vnormal+nowrap" >> $GITHUB_ENV
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
echo "HCNUMVER=$HCNUMVER" >> $GITHUB_ENV
echo "ARG_TESTS=--enable-tests" >> $GITHUB_ENV
echo "ARG_BENCH=--enable-benchmarks" >> $GITHUB_ENV
echo "HEADHACKAGE=false" >> $GITHUB_ENV
echo "ARG_COMPILER=--$HCNAME --with-compiler=$HC" >> $GITHUB_ENV
echo "GHCJSARITH=0" >> $GITHUB_ENV
env:
CC: ${{ matrix.compiler }}
- name: env
run: |
env
- name: write cabal config
run: |
mkdir -p $CABAL_DIR
cat >> $CABAL_CONFIG <<EOF
remote-build-reporting: anonymous
write-ghc-environment-files: never
remote-repo-cache: $CABAL_DIR/packages
logs-dir: $CABAL_DIR/logs
world-file: $CABAL_DIR/world
extra-prog-path: $CABAL_DIR/bin
symlink-bindir: $CABAL_DIR/bin
installdir: $CABAL_DIR/bin
build-summary: $CABAL_DIR/logs/build.log
store-dir: $CABAL_DIR/store
install-dirs user
prefix: $CABAL_DIR
repository hackage.haskell.org
url: http://hackage.haskell.org/
EOF
cat $CABAL_CONFIG
- name: versions
run: |
$HC --version || true
$HC --print-project-git-commit-id || true
$CABAL --version || true
- name: update cabal index
run: |
$CABAL v2-update -v
- name: install cabal-plan
run: |
mkdir -p $HOME/.cabal/bin
curl -sL https://github.com/haskell-hvr/cabal-plan/releases/download/v0.6.2.0/cabal-plan-0.6.2.0-x86_64-linux.xz > cabal-plan.xz
echo 'de73600b1836d3f55e32d80385acc055fd97f60eaa0ab68a755302685f5d81bc cabal-plan.xz' | sha256sum -c -
xz -d < cabal-plan.xz > $HOME/.cabal/bin/cabal-plan
rm -f cabal-plan.xz
chmod a+x $HOME/.cabal/bin/cabal-plan
cabal-plan --version
- name: checkout
uses: actions/checkout@v2
with:
path: source
- name: initial cabal.project for sdist
run: |
touch cabal.project
echo "packages: $GITHUB_WORKSPACE/source/." >> cabal.project
cat cabal.project
- name: sdist
run: |
mkdir -p sdist
$CABAL sdist all --output-dir $GITHUB_WORKSPACE/sdist
- name: unpack
run: |
mkdir -p unpacked
find sdist -maxdepth 1 -type f -name '*.tar.gz' -exec tar -C $GITHUB_WORKSPACE/unpacked -xzvf {} \;
- name: generate cabal.project
run: |
PKGDIR_protolude="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/protolude-[0-9.]*')"
echo "PKGDIR_protolude=${PKGDIR_protolude}" >> $GITHUB_ENV
touch cabal.project
touch cabal.project.local
echo "packages: ${PKGDIR_protolude}" >> cabal.project
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo "package protolude" >> cabal.project ; fi
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
cat >> cabal.project <<EOF
EOF
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(protolude)$/; }' >> cabal.project.local
cat cabal.project
cat cabal.project.local
- name: dump install plan
run: |
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
cabal-plan
- name: cache
uses: actions/cache@v2
with:
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
path: ~/.cabal/store
restore-keys: ${{ runner.os }}-${{ matrix.compiler }}-
- name: install dependencies
run: |
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --dependencies-only -j2 all
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dependencies-only -j2 all
- name: build w/o tests
run: |
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
- name: build
run: |
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --write-ghc-environment-files=always
- name: cabal check
run: |
cd ${PKGDIR_protolude} || false
${CABAL} -vnormal check
- name: haddock
run: |
$CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all
- name: unconstrained build
run: |
rm -f cabal.project.local
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
+31
View File
@@ -0,0 +1,31 @@
name: HLint CI
on:
push:
branches:
- master
pull_request:
branches: [ master ]
paths:
- '.github/workflows/hlint.yml'
- 'app/**/*.hs'
- 'src/**/*.hs'
- 'test/**/*.hs'
jobs:
hlint:
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
HLINT_ACTION_LOG_LEVEL: debug
steps:
- name: Check out
uses: actions/checkout@v2
- name: Set up HLint
uses: rwe/actions-hlint-setup@v1
- name: Haskell Lint
uses: rwe/actions-hlint-run@v2
with:
path: '["src/"]'
fail-on: warning
+13
View File
@@ -0,0 +1,13 @@
name: Nix CI
on: [pull_request]
jobs:
build:
name: nix
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: cachix/install-nix-action@v3
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
- run: nix-build
+118
View File
@@ -0,0 +1,118 @@
name: Stack CI
on:
pull_request:
schedule:
- cron: "0 0 * * 1"
jobs:
build:
name: stack ${{ matrix.plan.resolver }}
strategy:
matrix:
os: [ubuntu-latest, macOS-latest]
# use this to specify what resolvers and ghc to use
plan:
- { build: stack, resolver: "lts-9" } # ghc-8.0.2
- { build: stack, resolver: "lts-10" } # ghc-8.2.2
- { build: stack, resolver: "lts-11" } # ghc-8.2.2
- { build: stack, resolver: "lts-12" } # ghc-8.4.4
- { build: stack, resolver: "lts-13" } # ghc-8.6.4
- { build: stack, resolver: "lts-14" } # ghc-8.6.5
- { build: stack, resolver: "lts-15" } # ghc-8.8.2
- { build: stack, resolver: "lts-16" } # ghc-8.8.4
- { build: stack, resolver: "lts-17" } # ghc-8.10.3
- { build: stack, resolver: "lts-18" } # ghc-8.10.7
- { build: stack, resolver: "lts-19" } # ghc-9.0.2
- { build: stack, resolver: "lts-20" } # ghc-9.2.5
# - { build: stack, resolver: "" }
# use this to include any dependencies from OS package managers
include: []
# - os: macOS-latest
# brew: anybrewdeps
# - os: ubuntu-latest
# apt-get: happy libblas-dev liblapack-dev
exclude:
- os: macOS-latest
plan:
build: cabal
runs-on: ${{ matrix.os }}
steps:
- name: Install OS Packages
uses: mstksg/get-package@v1
with:
apt-get: ${{ matrix.apt-get }}
brew: ${{ matrix.brew }}
- uses: actions/checkout@v1
- name: Setup stack
uses: mstksg/setup-stack@v1
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
- name: Setup cabal-install
uses: actions/setup-haskell@v1
with:
ghc-version: ${{ matrix.plan.ghc }}
cabal-version: ${{ matrix.plan.cabal-install }}
if: matrix.plan.build == 'cabal'
- name: Install dependencies
run: |
set -ex
case "$BUILD" in
stack)
stack --no-terminal --install-ghc --resolver $ARGS test --bench --only-dependencies
;;
cabal)
cabal --version
cabal update
PACKAGES=$(stack --install-ghc query locals | grep '^ *path' | sed 's@^ *path:@@')
cabal install --only-dependencies --enable-tests --enable-benchmarks --force-reinstalls --ghc-options=-O0 --reorder-goals --max-backjumps=-1 $CABALARGS $PACKAGES
;;
esac
set +ex
env:
ARGS: ${{ matrix.plan.resolver }}
BUILD: ${{ matrix.plan.build }}
- name: Build
run: |
set -ex
case "$BUILD" in
stack)
stack --no-terminal --resolver $ARGS test --bench --no-run-benchmarks --haddock --no-haddock-deps
;;
cabal)
PACKAGES=$(stack --install-ghc query locals | grep '^ *path' | sed 's@^ *path:@@')
cabal install --enable-tests --enable-benchmarks --force-reinstalls --ghc-options=-O0 --reorder-goals --max-backjumps=-1 $CABALARGS $PACKAGES
ORIGDIR=$(pwd)
for dir in $PACKAGES
do
cd $dir
cabal check || [ "$CABALVER" == "1.16" ]
cabal sdist
PKGVER=$(cabal info . | awk '{print $2;exit}')
SRC_TGZ=$PKGVER.tar.gz
cd dist
tar zxfv "$SRC_TGZ"
cd "$PKGVER"
cabal configure --enable-tests --ghc-options -O0
cabal build
if [ "$CABALVER" = "1.16" ] || [ "$CABALVER" = "1.18" ]; then
cabal test
else
cabal test --show-details=streaming --log=/dev/stdout
fi
cd $ORIGDIR
done
;;
esac
set +ex
env:
ARGS: ${{ matrix.plan.resolver }}
BUILD: ${{ matrix.plan.build }}
+9
View File
@@ -0,0 +1,9 @@
*.sw[ponmkl]
.stack-work
dist
.cabal-sandbox
cabal.sandbox.config
*.hi
*.o
stack.yaml.lock
dist-newstyle
+13
View File
@@ -0,0 +1,13 @@
- ignore: {name: Avoid lambda}
- ignore: {name: Eta reduce}
- ignore: {name: Redundant lambda}
- ignore: {name: Collapse lambdas}
- ignore: {name: Use String}
- ignore: {name: Use fmap, within: Protolude.Monad}
- ignore: {name: Use putStr, within: Protolude.Show}
- ignore: {name: Use putStrLn, within: Protolude.Show}
- ignore: {name: Use bimap, within: Protolude.Bifunctor}
- ignore: {name: Use first, within: Protolude.Bifunctor}
- ignore: {name: Use sortOn}
# CPP preprocessor oddities
- ignore: {name: Unused LANGUAGE pragma, within: [Protolude.Base, Protolude.CallStack, Protolude.Conv, Protolude.Error]}
+143
View File
@@ -0,0 +1,143 @@
0.3.3
=====
* GHC 9.4.4 support
0.3.2
=====
* GHC 9.2.2 support
* Drop export executable
0.3.1
=====
* GHC 9.0.1 and 9.2.1 support
* Add `HasCallStack` to unsafe* functions.
* Banish `String` on `readMaybe` and `readEither`.
0.3.0
=====
* GHC 8.10.1 support
* Use `Protolude.ConvertText` as the default string conversion class. This
removes partial functions when converting to/from ByteStrings.
* Provide `Protolude.Conv` as a compatibility layer for old string conversion
interface.
* Migrated `Debug` and `Unsafe` to `Protolude.Debug` and `Protolude.Unsafe`.
* Export Unicode functions:
- `intToDigit`
- `isAlpha`
- `isAlphaNum`
- `isAscii`
- `isControl`
- `isDigit`
- `isHexDigit`
- `isLetter`
- `isLower`
- `isPrint`
- `isSpace`
- `isUpper`
* Export `MonadFail` class.
* Export `gcast` from Data.Typeable.
* Export `typeOf` from Data.Typeable.
* Export `Handler` from Control.Exception.
* Export `yield` from Control.Concurrency.
* Provide compatibility module `Protolude.Partial` as single export for unsafe
partial functions with the same naming conventions as Prelude.
0.2.4
=====
* GHC 8.8.1 support
0.2.3
=====
* GHC 8.6.1 support
* Export `fromLeft` and `fromRight`.
* Mask `always` and `alwaysSucceeds` from STM export for stm-2.5.
0.2.2
=====
* Add explicit `witness` function for use as type witness without warnings.
Makes undefined semantically distinguishable from type witnesses.
* Backwards compatible `Protolude.Safe` module for explicit handling of partial
list operations.
* Export `minimumDef`, `maximumDef`.
* Looser lower-bound on Data.Kind export for GHC 8.0.x.
0.2.1
====
* Exposes `throwE` and `catchE`.
* Add `transformers-compat` for old versions of transformers that require
`throwE`, `catchE`.
* Fix `safe` version bounds for new versions.
* Add `mapExceptT and `withExceptT`.
* Export `scanl'` and provide shim for backwards compatibility.
* Add `putErrLn`.
* Expose `RealFloat`.
* Expose `GHC.Records` exports for GHC 8.2 and above.
0.2
====
* Expose `Symbol` and `Nat` types from `GHC.TypeLits` by default.
* Switch exported `(<>)` to be from `Data.Monoid` instead of Semigroup.
* Expose `putByteString` and `putLByteString` monomorphic versions of `putStrLn` functions
* Export `genericLength` and other generic list return functions.
* Rename `msg` to `fatalErrorMessage`.
* Export `ExceptT`, `ReaderT`, and `StateT` constructors.
* Mask `displayException` from default exports.
* Mask `stToIO` from default exports.
* Export `NonEmpty` type and constructor for Base 4.9 only.
* Export `Data.Semigroup` type and functions for Base 4.9 only.
* Restrict exported symbols from ``async`` to set available in 2.0.
* Add `(&&^)`, `(||^)`, `(<&&>)`, `(<||>)`
* Expose `unzip`.
* Export `maximumMay` and `minimumMay`.
* Mask `Type` export from `Data.Kind`.
* Wrap `die` to take `Text` argument instead of `[Char]`.
* Export constructors `GHC.Generics`: `(:+:)`, `(:*:)`, and `(:.:)`.
* Expose `StablePtr`, `IntPtr` and `WordPtr` types.
0.1.9
====
* Make `sum` and `product` strict
0.1.8
=====
* ``foreach`` for applicative traversals.
* ``hush`` function for error handling.
* ``tryIO`` function for error handling.
* ``pass`` function for noop applicative branches.
* Mask ``Handler`` typeclass export.
* Mask ``yield`` function export.
0.1.7
=====
* Exports monadic ``(>>)`` operator by default.
* Adds ``traceId`` and ``traceShowId`` functions.
* Exports``reader`` and ``state`` functions by default.
* Export lifted ``throwIO`` and ``throwTo`` functions.
0.1.6
=====
* Adds uncatchable panic exception throwing using Text message.
* Removes ``printf``
* Removes ``string-conv`` dependency so Stack build works without ``extra-deps``.
* Brings ``Callstack`` machinery in for GHC 8.x.
* Removes ``throw`` and ``assert`` from ``Control.Exception`` exports.
* Removes ``unsafeShiftL`` and ``unsafeShiftR`` from ``Data.Bits`` exports.
* Reexport ``throw`` as ``unsafeThrow`` via Unsafe module.
* Hides all Show class functions. Only the Class itself is exported. Forbids custom instances that are not GHC derived.
* Export`` encodeUtf8`` and ``decodeUtf8`` functions by default.
* Adds ``unsnoc`` function.
0.1.5
=====
* Initial release.
+19
View File
@@ -0,0 +1,19 @@
Copyright (c) 2016-2020, Stephen Diehl
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
+220
View File
@@ -0,0 +1,220 @@
Protolude
=========
[![Build Status](https://github.com/protolude/protolude/workflows/Cabal%20CI/badge.svg)](https://github.com/protolude/protolude/actions)
[![Build Status](https://github.com/protolude/protolude/workflows/Stack%20CI/badge.svg)](https://github.com/protolude/protolude/actions)
[![Build Status](https://github.com/protolude/protolude/workflows/Nix%20CI/badge.svg)](https://github.com/protolude/protolude/actions)
[![Hackage](https://img.shields.io/hackage/v/protolude.svg)](https://hackage.haskell.org/package/protolude)
A sensible starting Prelude for building custom Preludes.
Design points:
* Banishes String.
* Banishes partial functions.
* Compiler warning on bottoms.
* Polymorphic string IO functions.
* Polymorphic show.
* Automatic string conversions.
* Types for common data structures in scope.
* Types for all common string types (Text/ByteString) in scope.
* Banishes impure exception throwing outside of IO.
* StateT/ReaderT/ExceptT transformers in scope by default.
* Foldable / Traversable functions in scope by default.
* Unsafe functions are prefixed with "unsafe" in separate module.
* Compiler agnostic, GHC internal modules are abstracted out into Base.
* ``sum`` and ``product`` are strict by default.
* Includes Semiring for GHC >= 7.6.
* Includes Bifunctor for GHC >= 7.6.
* Includes Semigroup for GHC >= 7.6.
Supports:
* GHC 7.6.3
* GHC 7.8.4
* GHC 7.10.3
* GHC 8.0.2
* GHC 8.2.2
* GHC 8.4.1
* GHC 8.4.4
* GHC 8.6.1
* GHC 8.6.4
* GHC 8.6.5
* GHC 8.8.1
* GHC 8.10.1
* GHC 9.0.1
* GHC 9.2.1
Stack LTS:
* lts-6.x
* lts-7.x
* lts-8.x
* lts-9.x
* lts-10.x
* lts-11.x
* lts-12.x
* lts-13.x
* lts-14.x
* lts-15.x
* lts-16.x
* lts-17.x
* lts-18.x
* lts-19.14 and higher
Usage
-----
To try out standalone prelude at the interactive shell, from the Protolude
project directory run.
```haskell
$ stack repl
> import Protolude
```
Swapping out the old Prelude
----------------------------
Disable the built-in prelude at the top of your file:
```haskell
{-# LANGUAGE NoImplicitPrelude #-}
```
Or directly in your project cabal file:
```haskell
default-extensions: NoImplicitPrelude
```
Then in your modules:
```haskell
import Protolude
```
Dependencies
------------
Protolude tries to be light on dependencies and only pulls in *essential*
libraries that are universally common across most real-world projects. Lower and
upper bounds are fully specified and compatible with both vanilla Cabal and
tracks Stack LTS resolver.
| Dependencies | Lower (>=) | Upper (<) |
| ----------- | -------- | -------- |
| array | 0.4 | 0.6 |
| async | 2.0 | 2.3 |
| base | 4.6 | 4.16 |
| bytestring | 0.10 | 0.11 |
| containers | 0.5 | 0.7 |
| deepseq | 1.3 | 1.5 |
| ghc-prim | 0.3 | 0.7 |
| hashable | 1.2 | 1.4 |
| mtl | 2.1 | 2.3 |
| stm | 2.4 | 2.6 |
| text | 1.2 | 1.3 |
| transformers | 0.4 | 0.6 |
| fail | 4.9 | 4.10 |
Structure
---------
Protolude's main modules are the following:
* [Protolude.hs](https://github.com/sdiehl/protolude/blob/master/src/Protolude.hs)
* [Base.hs](https://github.com/sdiehl/protolude/blob/master/src/Protolude/Base.hs)
* [Show.hs](https://github.com/sdiehl/protolude/blob/master/src/Protolude/Show.hs)
* [Conv.hs](https://github.com/sdiehl/protolude/blob/master/src/Protolude/Conv.hs)
FAQs
----
* **My ``putStrLn`` and ``putStr`` instances are no longer inferred in the presense
of the ``-XOverloadedStrings`` extension?**
Because the print functions are polymorphic the type of the print functions may
require annotations if the type is not fully specified by inference. To force a
specific type at the call site use either
```haskell
putText :: MonadIO m => T.Text -> m ()
putLText :: MonadIO m => TL.Text -> m ()
```
* **How do I write manual Show instances if ``show`` isn't provided?**
Generally speaking writing manual instances of Show is a
[Haskell antipattern](http://www.stephendiehl.com/posts/strings.html) because it produces
law-violating instances of Show. You probably want to use a
[pretty printer](https://hackage.haskell.org/package/wl-pprint-text) library for custom printing.
If backwards compatibility is needed then the base library can be imported
manually.
```haskell
import GHC.Show (Show(..))
```
Automatic deriving of ``Show`` for your types is still supported since the class
is in scope by default.
* **Partial functions like ``undefined`` raise compiler warnings on
usage.**
This is by design. For fatal uncatchable errors use the provided ``panic``
function if you intend the program to immediately abort.
```haskell
panic "Thus I die. Thus, thus, thus. Now I am dead"
```
If inside of IO simply use ``throwIO`` for exception handling, or if in pure
business logic use well-typed checked exceptions of the ``ExceptT`` variety.
* **Why is ``id`` not in scope?**
It has been renamed to ``identity`` to reserve the ``id`` identifier for the
more common use case of business logic.
* **But what if I want the partial functions?**
You if you need partial functions for backwards compatibility you can use the
`Protolude.Partial` module and mask the safe definitions as needed.
```haskell
import Protolude hiding (head)
import Protolude.Partial (head)
```
Development Tools
-----------------
**GHC Magic**
To build the `exports` management tool use:
```bash
$ cabal new-build exports --flag dev
$ cabal run exports
```
This tool uses GHC's internal compile symbol table to generate a list of exports
and keep the export list of protolude stable across different versions of GHC
and base.
**Continious Integration**
There is a massive test suite that tests all versions of GHC 7.6 - GHC HEAD
alongside all Stack resolvers to ensure no regressions. Any pull requests or
patch has to pass the 47 integrity checks before being considered. Any pull
request must keep the export list consistent across GHC and Base version and not
have any accidental symbol dropping or drift without updating the export golden
tests.
License
-------
Released under the MIT License.
Copyright (c) 2016-2022, Stephen Diehl
+2
View File
@@ -0,0 +1,2 @@
import Distribution.Simple
main = defaultMain
+137
View File
@@ -0,0 +1,137 @@
set -e
stack build --resolver lts-3.0
stack build --resolver lts-4.0
stack build --resolver lts-5.0
stack build --resolver lts-6.0
stack build --resolver lts-7.0
stack build --resolver lts-7.1
stack build --resolver lts-7.2
stack build --resolver lts-7.3
stack build --resolver lts-7.4
stack build --resolver lts-7.5
stack build --resolver lts-7.6
stack build --resolver lts-7.7
stack build --resolver lts-7.8
stack build --resolver lts-7.9
stack build --resolver lts-7.10
stack build --resolver lts-7.11
stack build --resolver lts-7.12
stack build --resolver lts-7.13
stack build --resolver lts-7.14
stack build --resolver lts-7.15
stack build --resolver lts-7.16
stack build --resolver lts-8.0
stack build --resolver lts-8.1
stack build --resolver lts-8.2
stack build --resolver lts-8.3
stack build --resolver lts-8.4
stack build --resolver lts-8.5
stack build --resolver lts-8.6
stack build --resolver lts-8.7
stack build --resolver lts-8.8
stack build --resolver lts-8.9
stack build --resolver lts-8.10
stack build --resolver lts-8.11
stack build --resolver lts-8.12
stack build --resolver lts-8.13
stack build --resolver lts-9.0
stack build --resolver lts-9.1
stack build --resolver lts-9.2
stack build --resolver lts-9.3
stack build --resolver lts-9.4
stack build --resolver lts-9.5
stack build --resolver lts-9.6
stack build --resolver lts-9.7
stack build --resolver lts-9.8
stack build --resolver lts-9.9
stack build --resolver lts-9.10
stack build --resolver lts-9.11
stack build --resolver lts-9.12
stack build --resolver lts-9.13
stack build --resolver lts-9.14
stack build --resolver lts-9.15
stack build --resolver lts-9.16
stack build --resolver lts-9.17
stack build --resolver lts-9.18
stack build --resolver lts-9.19
stack build --resolver lts-9.20
stack build --resolver lts-10.0
stack build --resolver lts-10.1
stack build --resolver lts-10.2
stack build --resolver lts-11.0
stack build --resolver lts-11.1
stack build --resolver lts-11.2
stack build --resolver lts-11.3
stack build --resolver lts-11.4
stack build --resolver lts-11.5
stack build --resolver lts-11.6
stack build --resolver lts-11.7
stack build --resolver lts-11.8
stack build --resolver lts-11.10
stack build --resolver lts-11.11
stack build --resolver lts-11.12
stack build --resolver lts-11.13
stack build --resolver lts-12.0
stack build --resolver lts-12.1
stack build --resolver lts-12.2
stack build --resolver lts-12.3
stack build --resolver lts-12.4
stack build --resolver lts-12.5
stack build --resolver lts-12.6
stack build --resolver lts-12.7
stack build --resolver lts-12.8
stack build --resolver lts-12.9
stack build --resolver lts-12.10
stack build --resolver lts-12.11
stack build --resolver lts-12.12
stack build --resolver lts-12.13
stack build --resolver lts-12.14
stack build --resolver lts-12.16
stack build --resolver lts-12.17
stack build --resolver lts-12.18
stack build --resolver lts-12.19
stack build --resolver lts-12.20
stack build --resolver lts-12.21
stack build --resolver lts-13.0
stack build --resolver lts-13.1
stack build --resolver lts-13.2
stack build --resolver lts-13.3
stack build --resolver lts-13.4
stack build --resolver lts-13.5
stack build --resolver lts-13.6
stack build --resolver lts-13.7
stack build --resolver lts-13.8
stack build --resolver lts-13.9
stack build --resolver lts-13.10
stack build --resolver lts-13.11
stack build --resolver lts-13.12
stack build --resolver lts-13.13
stack build --resolver lts-13.14
stack build --resolver lts-13.15
stack build --resolver lts-13.16
stack build --resolver lts-13.17
stack build --resolver lts-13.18
stack build --resolver lts-13.19
stack build --resolver lts-13.20
stack build --resolver lts-13.21
stack build --resolver lts-13.22
stack build --resolver lts-13.23
stack build --resolver lts-13.24
stack build --resolver lts-13.25
stack build --resolver lts-13.26
stack build --resolver lts-14.0
stack build --resolver lts-14.1
stack build --resolver lts-14.2
stack build --resolver lts-14.3
stack build --resolver lts-14.4
stack build --resolver lts-14.5
stack build --resolver lts-14.6
stack build --resolver lts-14.7
stack build --resolver lts-14.8
stack build --resolver lts-14.9
stack build --resolver lts-14.10
stack build --resolver lts-14.11
stack build --resolver lts-14.12
stack build --resolver lts-14.13
stack build --resolver lts-14.14
+5
View File
@@ -0,0 +1,5 @@
{ pkgs ? import <nixpkgs> {}
}:
pkgs.haskellPackages.developPackage {
root = ./.;
}
@@ -0,0 +1,960 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from Data.List.NonEmpty
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Protolude.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from Data.Monoid
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Monoid
All from Data.Monoid
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Monoid
Alt from Data.Monoid
Alternative from GHC.Base
Any from Data.Monoid
Any from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeNats
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
CompactionFailed from GHC.IO.Exception
CompactionFailed from GHC.IO.Exception
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Monoid
Dual from Data.Monoid
EQ from GHC.Types
Either from Data.Either
Endo from Data.Monoid
Endo from Data.Monoid
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
HasField from GHC.Records
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Internal
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Internal
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeNats
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Internal
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from Data.List.NonEmpty
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Monoid
Product from Data.Monoid
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from Data.Semigroup
Semiring from Protolude.Semiring
Seq from Data.Sequence.Internal
Set from Data.Set.Internal
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeNats
SomeNat from GHC.TypeNats
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Monoid
Sum from Data.Monoid
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Monoid
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from GHC.IO
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Data.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Data.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Monoid
getAlt from Data.Monoid
getAny from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Monoid
getField from GHC.Records
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Monoid
getStackTrace from GHC.ExecutionStack
getSum from Data.Monoid
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyChan from Control.Concurrent.Chan
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from Data.Semigroup
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from Data.Semigroup
stimesIdempotent from Data.Semigroup
stimesIdempotentMonoid from Data.Semigroup
stimesMonoid from Data.Semigroup
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable
unComp1 from GHC.Generics
unGetChan from Control.Concurrent.Chan
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,960 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from Data.List.NonEmpty
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Protolude.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from Data.Monoid
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Monoid
All from Data.Monoid
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Monoid
Alt from Data.Monoid
Alternative from GHC.Base
Any from Data.Monoid
Any from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeNats
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
CompactionFailed from GHC.IO.Exception
CompactionFailed from GHC.IO.Exception
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Monoid
Dual from Data.Monoid
EQ from GHC.Types
Either from Data.Either
Endo from Data.Monoid
Endo from Data.Monoid
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
HasField from GHC.Records
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Internal
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Internal
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeNats
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Internal
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from Data.List.NonEmpty
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Monoid
Product from Data.Monoid
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from Data.Semigroup
Semiring from Protolude.Semiring
Seq from Data.Sequence.Internal
Set from Data.Set.Internal
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeNats
SomeNat from GHC.TypeNats
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Monoid
Sum from Data.Monoid
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Monoid
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from GHC.IO
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Data.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Data.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Monoid
getAlt from Data.Monoid
getAny from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Monoid
getField from GHC.Records
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Monoid
getStackTrace from GHC.ExecutionStack
getSum from Data.Monoid
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyChan from Control.Concurrent.Chan
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from Data.Semigroup
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from Data.Semigroup
stimesIdempotent from Data.Semigroup
stimesIdempotentMonoid from Data.Semigroup
stimesMonoid from Data.Semigroup
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable
unComp1 from GHC.Generics
unGetChan from Control.Concurrent.Chan
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,958 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from GHC.Base
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Data.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from GHC.Base
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Semigroup.Internal
All from Data.Semigroup.Internal
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Semigroup.Internal
Alt from Data.Semigroup.Internal
Alternative from GHC.Base
Any from Data.Semigroup.Internal
Any from Data.Semigroup.Internal
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeNats
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
CompactionFailed from GHC.IO.Exception
CompactionFailed from GHC.IO.Exception
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Semigroup.Internal
Dual from Data.Semigroup.Internal
EQ from GHC.Types
Either from Data.Either
Endo from Data.Semigroup.Internal
Endo from Data.Semigroup.Internal
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
HasField from GHC.Records
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Internal
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Internal
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeNats
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Internal
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from GHC.Base
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Semigroup.Internal
Product from Data.Semigroup.Internal
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from GHC.Base
Semiring from Protolude.Semiring
Seq from Data.Sequence.Internal
Set from Data.Set.Internal
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeNats
SomeNat from GHC.TypeNats
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Semigroup.Internal
Sum from Data.Semigroup.Internal
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Semigroup.Internal
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from GHC.IO
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Data.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Data.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Semigroup.Internal
getAlt from Data.Semigroup.Internal
getAny from Data.Semigroup.Internal
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Semigroup.Internal
getField from GHC.Records
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Semigroup.Internal
getStackTrace from GHC.ExecutionStack
getSum from Data.Semigroup.Internal
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from GHC.Base
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from GHC.Base
stimesIdempotent from Data.Semigroup.Internal
stimesIdempotentMonoid from Data.Semigroup.Internal
stimesMonoid from Data.Semigroup.Internal
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable
unComp1 from GHC.Generics
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,959 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from GHC.Base
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Data.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from GHC.Base
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Semigroup.Internal
All from Data.Semigroup.Internal
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Semigroup.Internal
Alt from Data.Semigroup.Internal
Alternative from GHC.Base
Any from Data.Semigroup.Internal
Any from Data.Semigroup.Internal
Ap from Data.Monoid
Ap from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception.Type
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeNats
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
CompactionFailed from GHC.IO.Exception
CompactionFailed from GHC.IO.Exception
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception.Type
DivideByZero from GHC.Exception.Type
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Semigroup.Internal
Dual from Data.Semigroup.Internal
EQ from GHC.Types
Either from Data.Either
Endo from Data.Semigroup.Internal
Endo from Data.Semigroup.Internal
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception.Type
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
HasField from GHC.Records
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Internal
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Internal
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Maybe
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeNats
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception.Type
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Internal
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Maybe
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from GHC.Base
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Maybe
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception.Type
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Semigroup.Internal
Product from Data.Semigroup.Internal
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception.Type
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from GHC.Base
Semiring from Protolude.Semiring
Seq from Data.Sequence.Internal
Set from Data.Set.Internal
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception.Type
SomeException from GHC.Exception.Type
SomeNat from GHC.TypeNats
SomeNat from GHC.TypeNats
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Semigroup.Internal
Sum from Data.Semigroup.Internal
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception.Type
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Semigroup.Internal
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from GHC.IO
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception.Type
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from Control.Monad.ST.Imp
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception.Type
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Data.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Data.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Semigroup.Internal
getAlt from Data.Semigroup.Internal
getAny from Data.Semigroup.Internal
getAp from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Semigroup.Internal
getField from GHC.Records
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Semigroup.Internal
getStackTrace from GHC.ExecutionStack
getSum from Data.Semigroup.Internal
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from GHC.Base
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from GHC.Base
stimesIdempotent from Data.Semigroup.Internal
stimesIdempotentMonoid from Data.Semigroup.Internal
stimesMonoid from Data.Semigroup.Internal
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception.Type
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable
unComp1 from GHC.Generics
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
underflowError from GHC.Real
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,959 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from GHC.Base
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Data.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from GHC.Base
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Semigroup.Internal
All from Data.Semigroup.Internal
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Semigroup.Internal
Alt from Data.Semigroup.Internal
Alternative from GHC.Base
Any from Data.Semigroup.Internal
Any from Data.Semigroup.Internal
Ap from Data.Monoid
Ap from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception.Type
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeNats
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
CompactionFailed from GHC.IO.Exception
CompactionFailed from GHC.IO.Exception
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception.Type
DivideByZero from GHC.Exception.Type
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Semigroup.Internal
Dual from Data.Semigroup.Internal
EQ from GHC.Types
Either from Data.Either
Endo from Data.Semigroup.Internal
Endo from Data.Semigroup.Internal
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception.Type
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
HasField from GHC.Records
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Internal
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Internal
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Maybe
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeNats
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception.Type
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Internal
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Maybe
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from GHC.Base
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Maybe
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception.Type
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Semigroup.Internal
Product from Data.Semigroup.Internal
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception.Type
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from GHC.Base
Semiring from Protolude.Semiring
Seq from Data.Sequence.Internal
Set from Data.Set.Internal
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception.Type
SomeException from GHC.Exception.Type
SomeNat from GHC.TypeNats
SomeNat from GHC.TypeNats
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Semigroup.Internal
Sum from Data.Semigroup.Internal
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception.Type
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Semigroup.Internal
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from GHC.IO
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception.Type
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from Control.Monad.ST.Imp
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception.Type
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Data.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Data.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Semigroup.Internal
getAlt from Data.Semigroup.Internal
getAny from Data.Semigroup.Internal
getAp from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Semigroup.Internal
getField from GHC.Records
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Semigroup.Internal
getStackTrace from GHC.ExecutionStack
getSum from Data.Semigroup.Internal
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from GHC.Base
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from GHC.Base
stimesIdempotent from Data.Semigroup.Internal
stimesIdempotentMonoid from Data.Semigroup.Internal
stimesMonoid from Data.Semigroup.Internal
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception.Type
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable
unComp1 from GHC.Generics
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
underflowError from GHC.Real
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,956 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from Data.List.NonEmpty
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Protolude.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from Data.Monoid
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Monoid
All from Data.Monoid
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Monoid
Alt from Data.Monoid
Alternative from GHC.Base
Any from Data.Monoid
Any from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeLits
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Monoid
Dual from Data.Monoid
EQ from GHC.Types
Either from Data.Either
Endo from Data.Monoid
Endo from Data.Monoid
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Base
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Base
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeLits
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Base
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from Data.List.NonEmpty
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Monoid
Product from Data.Monoid
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from Data.Semigroup
Semiring from Protolude.Semiring
Seq from Data.Sequence
Set from Data.Set.Base
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeLits
SomeNat from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Monoid
Sum from Data.Monoid
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable.Internal
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Monoid
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from Control.Exception.Base
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Protolude.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Protolude.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Monoid
getAlt from Data.Monoid
getAny from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Monoid
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Monoid
getStackTrace from GHC.ExecutionStack
getSum from Data.Monoid
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyChan from Control.Concurrent.Chan
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from Data.Semigroup
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from Data.Semigroup
stimesIdempotent from Data.Semigroup
stimesIdempotentMonoid from Data.Semigroup
stimesMonoid from Data.Semigroup
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable.Internal
unComp1 from GHC.Generics
unGetChan from Control.Concurrent.Chan
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,956 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from Data.List.NonEmpty
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Protolude.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from Data.Monoid
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Monoid
All from Data.Monoid
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Monoid
Alt from Data.Monoid
Alternative from GHC.Base
Any from Data.Monoid
Any from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeLits
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Monoid
Dual from Data.Monoid
EQ from GHC.Types
Either from Data.Either
Endo from Data.Monoid
Endo from Data.Monoid
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Base
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Base
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeLits
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Base
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from Data.List.NonEmpty
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Monoid
Product from Data.Monoid
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from Data.Semigroup
Semiring from Protolude.Semiring
Seq from Data.Sequence
Set from Data.Set.Base
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeLits
SomeNat from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Monoid
Sum from Data.Monoid
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable.Internal
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Monoid
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from Control.Exception.Base
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Protolude.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Protolude.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Monoid
getAlt from Data.Monoid
getAny from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Monoid
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Monoid
getStackTrace from GHC.ExecutionStack
getSum from Data.Monoid
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyChan from Control.Concurrent.Chan
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from Data.Semigroup
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from Data.Semigroup
stimesIdempotent from Data.Semigroup
stimesIdempotentMonoid from Data.Semigroup
stimesMonoid from Data.Semigroup
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable.Internal
unComp1 from GHC.Generics
unGetChan from Control.Concurrent.Chan
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
@@ -0,0 +1,956 @@
$ from GHC.Base
$! from Protolude.Base
$!! from Control.DeepSeq
$> from Data.Functor
% from GHC.Real
& from Data.Function
&& from GHC.Classes
&&^ from Protolude.Bool
* from GHC.Num
* from GHC.Types
** from GHC.Float
*> from GHC.Base
+ from GHC.Num
++ from GHC.Base
- from GHC.Num
. from GHC.Base
.&. from Data.Bits
.|. from Data.Bits
/ from GHC.Real
/= from GHC.Classes
:% from GHC.Real
:*: from GHC.Generics
:*: from GHC.Generics
:+ from Data.Complex
:+: from GHC.Generics
:.: from GHC.Generics
:| from Data.List.NonEmpty
:~: from Data.Type.Equality
< from GHC.Classes
<$ from GHC.Base
<$!> from Control.Monad
<$> from Data.Functor
<&&> from Protolude.Bool
<&> from Protolude.Functor
<* from GHC.Base
<**> from GHC.Base
<*> from GHC.Base
<.> from Protolude.Semiring
<<$>> from Protolude.Functor
<<*>> from Protolude.Applicative
<= from GHC.Classes
<=< from Control.Monad
<> from Data.Monoid
<|> from GHC.Base
<||> from Protolude.Bool
=<< from GHC.Base
== from GHC.Classes
== from Data.Type.Equality
> from GHC.Classes
>= from GHC.Classes
>=> from Control.Monad
>> from GHC.Base
>>= from GHC.Base
All from Data.Monoid
All from Data.Monoid
AllocationLimitExceeded from GHC.IO.Exception
AllocationLimitExceeded from GHC.IO.Exception
Alt from Data.Monoid
Alt from Data.Monoid
Alternative from GHC.Base
Any from Data.Monoid
Any from Data.Monoid
AppendMode from GHC.IO.IOMode
Applicative from GHC.Base
ArithException from GHC.Exception
ArrayException from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
AssertionFailed from GHC.IO.Exception
Associativity from GHC.Generics
Async from Control.Concurrent.Async
AsyncException from GHC.IO.Exception
Bifunctor from Data.Bifunctor
Bits from Data.Bits
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnMVar from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
BlockedIndefinitelyOnSTM from GHC.IO.Exception
Bool from GHC.Types
Bounded from GHC.Enum
ByteString from Data.ByteString.Internal
C1 from GHC.Generics
CallStack from GHC.Stack.Types
Chan from Control.Concurrent.Chan
Char from GHC.Types
CmpNat from GHC.TypeLits
Coercible from GHC.Types
Coercion from Data.Type.Coercion
Coercion from Data.Type.Coercion
Comp1 from GHC.Generics
Complex from Data.Complex
Concurrently from Control.Concurrent.Async
Concurrently from Control.Concurrent.Async
Const from Data.Functor.Const
Const from Data.Functor.Const
Constraint from GHC.Types
Constructor from GHC.Generics
D# from GHC.Types
D1 from GHC.Generics
Datatype from GHC.Generics
Deadlock from GHC.IO.Exception
Deadlock from GHC.IO.Exception
Denormal from GHC.Exception
DivideByZero from GHC.Exception
Double from GHC.Types
Down from Data.Ord
Down from Data.Ord
Dual from Data.Monoid
Dual from Data.Monoid
EQ from GHC.Types
Either from Data.Either
Endo from Data.Monoid
Endo from Data.Monoid
Enum from GHC.Enum
Eq from GHC.Classes
ErrorCall from GHC.Exception
ErrorCall from GHC.Exception
ErrorCallWithLocation from GHC.Exception
Except from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
ExceptT from Control.Monad.Trans.Except
Exception from GHC.Exception
ExitCode from GHC.IO.Exception
ExitFailure from GHC.IO.Exception
ExitSuccess from GHC.IO.Exception
F# from GHC.Types
False from GHC.Types
FatalError from Protolude.Panic
FatalError from Protolude.Panic
FilePath from GHC.IO
FiniteBits from Data.Bits
First from Data.Monoid
First from Data.Monoid
Fixity from GHC.Generics
FixityI from GHC.Generics
Float from GHC.Types
Floating from GHC.Float
Foldable from Data.Foldable
Fractional from GHC.Real
FunPtr from GHC.Ptr
Functor from GHC.Base
GT from GHC.Types
Generic from GHC.Generics
Generic1 from GHC.Generics
Handle from GHC.IO.Handle.Types
HasCallStack from GHC.Stack.Types
Hashable from Data.Hashable.Class
HeapOverflow from GHC.IO.Exception
IO from GHC.Types
IOException from GHC.IO.Exception
IOMode from GHC.IO.IOMode
Identity from Data.Functor.Identity
Identity from Data.Functor.Identity
IndexOutOfBounds from GHC.IO.Exception
Infix from GHC.Generics
InfixI from GHC.Generics
Int from GHC.Types
Int16 from GHC.Int
Int32 from GHC.Int
Int64 from GHC.Int
Int8 from GHC.Int
IntMap from Data.IntMap.Base
IntPtr from Foreign.Ptr
IntSet from Data.IntSet.Base
Integer from GHC.Integer.Type
Integral from GHC.Real
IsLabel from GHC.OverloadedLabels
IsString from Data.String
Just from GHC.Base
K1 from GHC.Generics
K1 from GHC.Generics
KnownNat from GHC.TypeLits
KnownSymbol from GHC.TypeLits
L1 from GHC.Generics
LByteString from Protolude
LT from GHC.Types
LText from Protolude
Last from Data.Monoid
Last from Data.Monoid
Left from Data.Either
LeftAssociative from GHC.Generics
Leniency from Protolude.Conv
Lenient from Protolude.Conv
Location from GHC.ExecutionStack.Internal
Location from GHC.ExecutionStack.Internal
LossOfPrecision from GHC.Exception
M1 from GHC.Generics
M1 from GHC.Generics
MVar from GHC.MVar
Map from Data.Map.Base
MaskedInterruptible from GHC.IO
MaskedUninterruptible from GHC.IO
MaskingState from GHC.IO
Maybe from GHC.Base
Meta from GHC.Generics
MetaCons from GHC.Generics
MetaData from GHC.Generics
MetaSel from GHC.Generics
Monad from GHC.Base
MonadError from Control.Monad.Error.Class
MonadIO from Control.Monad.IO.Class
MonadPlus from GHC.Base
MonadReader from Control.Monad.Reader.Class
MonadState from Control.Monad.State.Class
Monoid from GHC.Base
NFData from Control.DeepSeq
Nat from GHC.Types
NestedAtomically from Control.Exception.Base
NestedAtomically from Control.Exception.Base
NoMethodError from Control.Exception.Base
NoMethodError from Control.Exception.Base
NonEmpty from Data.List.NonEmpty
NonTermination from Control.Exception.Base
NonTermination from Control.Exception.Base
NotAssociative from GHC.Generics
Nothing from GHC.Base
Num from GHC.Num
OnDecodeError from Data.Text.Encoding.Error
OnError from Data.Text.Encoding.Error
Option from Data.Semigroup
Option from Data.Semigroup
Ord from GHC.Classes
Ordering from GHC.Types
Overflow from GHC.Exception
PatternMatchFail from Control.Exception.Base
PatternMatchFail from Control.Exception.Base
Prefix from GHC.Generics
PrefixI from GHC.Generics
Print from Protolude.Show
Product from Data.Monoid
Product from Data.Monoid
Proxy from Data.Proxy
Proxy from Data.Proxy
Ptr from GHC.Ptr
QSem from Control.Concurrent.QSem
QSemN from Control.Concurrent.QSemN
R1 from GHC.Generics
Ratio from GHC.Real
RatioZeroDenominator from GHC.Exception
Rational from GHC.Real
Read from GHC.Read
ReadMode from GHC.IO.IOMode
ReadWriteMode from GHC.IO.IOMode
Reader from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
ReaderT from Control.Monad.Trans.Reader
Real from GHC.Real
RealFloat from GHC.Float
RealFrac from GHC.Real
Rec0 from GHC.Generics
RecConError from Control.Exception.Base
RecConError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecSelError from Control.Exception.Base
RecUpdError from Control.Exception.Base
RecUpdError from Control.Exception.Base
Refl from Data.Type.Equality
Rep from GHC.Generics
Right from Data.Either
RightAssociative from GHC.Generics
S1 from GHC.Generics
ST from GHC.ST
STM from GHC.Conc.Sync
Selector from GHC.Generics
Semigroup from Data.Semigroup
Semiring from Protolude.Semiring
Seq from Data.Sequence
Set from Data.Set.Base
Show from GHC.Show
SomeAsyncException from GHC.IO.Exception
SomeAsyncException from GHC.IO.Exception
SomeException from GHC.Exception
SomeException from GHC.Exception
SomeNat from GHC.TypeLits
SomeNat from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SomeSymbol from GHC.TypeLits
SrcLoc from GHC.ExecutionStack.Internal
SrcLoc from GHC.ExecutionStack.Internal
StablePtr from GHC.Stable
StackOverflow from GHC.IO.Exception
State from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StateT from Control.Monad.Trans.State.Lazy
StaticPtr from GHC.StaticPtr
Storable from Foreign.Storable
Strict from Protolude.Conv
StringConv from Protolude.Conv
Sum from Data.Monoid
Sum from Data.Monoid
Symbol from GHC.Types
Text from Data.Text.Internal
ThreadId from GHC.Conc.Sync
ThreadKilled from GHC.IO.Exception
Traversable from Data.Traversable
True from GHC.Types
Type from GHC.Types
TypeError from Control.Exception.Base
TypeError from Control.Exception.Base
TypeRep from Data.Typeable.Internal
Typeable from Data.Typeable.Internal
U1 from GHC.Generics
U1 from GHC.Generics
URec from GHC.Generics
UndefinedElement from GHC.IO.Exception
Underflow from GHC.Exception
UnicodeException from Data.Text.Encoding.Error
Unmasked from GHC.IO
UserInterrupt from GHC.IO.Exception
V1 from GHC.Generics
Void from Data.Void
Word from GHC.Types
Word16 from GHC.Word
Word32 from GHC.Word
Word64 from GHC.Word
Word8 from GHC.Word
WordPtr from Foreign.Ptr
WrappedMonoid from Data.Semigroup
WriteMode from GHC.IO.IOMode
ZipList from Control.Applicative
ZipList from Control.Applicative
^ from GHC.Real
^%^ from GHC.Real
^^ from GHC.Real
^^%^^ from GHC.Real
abs from GHC.Num
absurd from Data.Void
acos from GHC.Float
acosh from GHC.Float
addMVarFinalizer from Control.Concurrent.MVar
all from Data.Foldable
allowInterrupt from Control.Exception
always from GHC.Conc.Sync
alwaysSucceeds from GHC.Conc.Sync
and from Data.Foldable
any from Data.Foldable
ap from GHC.Base
appEndo from Data.Monoid
appendFile from Data.Text.IO
applyN from Protolude
asTypeOf from GHC.Base
asin from GHC.Float
asinh from GHC.Float
ask from Control.Monad.Reader.Class
asks from Control.Monad.Reader.Class
asum from Data.Foldable
async from Control.Concurrent.Async
asyncBound from Control.Concurrent.Async
asyncExceptionFromException from GHC.IO.Exception
asyncExceptionToException from GHC.IO.Exception
asyncOn from Control.Concurrent.Async
asyncThreadId from Control.Concurrent.Async
atDef from Protolude.Safe
atMay from Protolude.Safe
atan from GHC.Float
atan2 from GHC.Float
atanh from GHC.Float
atomically from GHC.Conc.Sync
bimap from Data.Bifunctor
bit from Data.Bits
bitDefault from Data.Bits
bitSize from Data.Bits
bitSizeMaybe from Data.Bits
bool from Protolude.Bool
boundedEnumFrom from GHC.Enum
boundedEnumFromThen from GHC.Enum
bracket from Control.Exception.Base
bracketOnError from Control.Exception.Base
bracket_ from Control.Exception.Base
break from GHC.List
byteSwap16 from GHC.Word
byteSwap32 from GHC.Word
byteSwap64 from GHC.Word
callStack from GHC.Stack
cancel from Control.Concurrent.Async
cancelWith from Control.Concurrent.Async
cast from Data.Typeable
castWith from Data.Type.Equality
catMaybes from Data.Maybe
catch from Control.Exception.Base
catchE from Control.Monad.Trans.Except
catchError from Control.Monad.Error.Class
catchJust from Control.Exception.Base
catchSTM from GHC.Conc.Sync
catches from Control.Exception
ceiling from GHC.Real
check from Control.Monad.STM
chr from GHC.Char
cis from Data.Complex
clearBit from Data.Bits
coerceWith from Data.Type.Coercion
compare from GHC.Classes
comparing from Data.Ord
complement from Data.Bits
complementBit from Data.Bits
conFixity from GHC.Generics
conIsRecord from GHC.Generics
conName from GHC.Generics
concat from Data.Foldable
concatMap from Data.Foldable
concatMapM from Protolude.Monad
concurrently from Control.Concurrent.Async
conjugate from Data.Complex
const from GHC.Base
cos from GHC.Float
cosh from GHC.Float
countLeadingZeros from Data.Bits
countTrailingZeros from Data.Bits
currentCallStack from GHC.Stack.CCS
curry from Data.Tuple
cycle from GHC.List
cycle1 from Data.Semigroup
datatypeName from GHC.Generics
decodeFloat from GHC.Float
decodeUtf8 from Data.Text.Encoding
decodeUtf8' from Data.Text.Encoding
decodeUtf8With from Data.Text.Encoding
deepseq from Control.DeepSeq
denominator from GHC.Real
die from Protolude
diff from Data.Semigroup
displayException from GHC.Exception
div from GHC.Real
divMod from GHC.Real
divZeroError from GHC.Real
drop from GHC.List
dropWhile from GHC.List
dupChan from Control.Concurrent.Chan
either from Data.Either
eitherA from Protolude.Applicative
elem from Data.Foldable
empty from GHC.Base
encodeFloat from GHC.Float
encodeUtf8 from Data.Text.Encoding
enumFrom from GHC.Enum
enumFromThen from GHC.Enum
enumFromThenTo from GHC.Enum
enumFromTo from GHC.Enum
eqT from Data.Typeable
evalState from Control.Monad.Trans.State.Lazy
evalStateT from Control.Monad.Trans.State.Lazy
evaluate from GHC.IO
even from GHC.Real
execState from Control.Monad.Trans.State.Lazy
execStateT from Control.Monad.Trans.State.Lazy
exitFailure from System.Exit
exitSuccess from System.Exit
exitWith from System.Exit
exp from GHC.Float
expm1 from GHC.Float
exponent from GHC.Float
fatalErrorMessage from Protolude.Panic
filter from GHC.List
filterM from Control.Monad
finally from Control.Exception.Base
find from Data.Foldable
finiteBitSize from Data.Bits
first from Data.Bifunctor
fix from Data.Function
fixST from GHC.ST
flip from GHC.Base
floatDigits from GHC.Float
floatRadix from GHC.Float
floatRange from GHC.Float
floor from GHC.Real
fmap from GHC.Base
fmapDefault from Data.Traversable
fold from Data.Foldable
foldM from Control.Monad
foldM_ from Control.Monad
foldMap from Data.Foldable
foldMapDefault from Data.Traversable
foldl from Data.Foldable
foldl' from Data.Foldable
foldl1May from Protolude.Safe
foldl1May' from Protolude.Safe
foldlM from Data.Foldable
foldr from Data.Foldable
foldr' from Data.Foldable
foldr1May from Protolude.Safe
foldrM from Data.Foldable
for from Data.Traversable
forM from Data.Traversable
forM_ from Data.Foldable
for_ from Data.Foldable
force from Control.DeepSeq
foreach from Protolude.Functor
forever from Control.Monad
forkFinally from Control.Concurrent
forkIO from GHC.Conc.Sync
forkIOWithUnmask from GHC.Conc.Sync
forkOS from Control.Concurrent
forkOSWithUnmask from Control.Concurrent
forkOn from GHC.Conc.Sync
forkOnWithUnmask from GHC.Conc.Sync
from from GHC.Generics
fromEnum from GHC.Enum
fromException from GHC.Exception
fromInteger from GHC.Num
fromIntegral from GHC.Real
fromLabel from GHC.OverloadedLabels
fromLeft from Protolude.Either
fromMaybe from Data.Maybe
fromRational from GHC.Real
fromRight from Protolude.Either
fromStrict from Data.Text.Lazy
fst from Data.Tuple
functionName from GHC.ExecutionStack.Internal
gcastWith from Data.Type.Equality
gcd from GHC.Real
gcdInt' from GHC.Real
gcdWord' from GHC.Real
genericDrop from Data.OldList
genericLength from Data.OldList
genericReplicate from Data.OldList
genericSplitAt from Data.OldList
genericTake from Data.OldList
get from Control.Monad.State.Class
getAll from Data.Monoid
getAlt from Data.Monoid
getAny from Data.Monoid
getArgs from System.Environment
getCallStack from GHC.Stack.Types
getChanContents from Control.Concurrent.Chan
getConst from Data.Functor.Const
getContents from Data.Text.IO
getDual from Data.Monoid
getFirst from Data.Monoid
getLast from Data.Monoid
getLine from Data.Text.IO
getMaskingState from GHC.IO
getNumCapabilities from GHC.Conc.Sync
getOption from Data.Semigroup
getProduct from Data.Monoid
getStackTrace from GHC.ExecutionStack
getSum from Data.Monoid
getZipList from Control.Applicative
gets from Control.Monad.State.Class
group from Data.OldList
groupBy from Data.OldList
guard from Control.Monad
guardM from Protolude.Bool
guarded from Protolude
guardedA from Protolude
hPutStr from Protolude.Show
hPutStrLn from Protolude.Show
handle from Control.Exception.Base
handleJust from Control.Exception.Base
hash from Data.Hashable.Class
hashUsing from Data.Hashable.Class
hashWithSalt from Data.Hashable.Class
head from Protolude.List
headDef from Protolude.Safe
headMay from Protolude.Safe
hush from Protolude.Exceptions
identity from Protolude
ifM from Protolude.Bool
ignore from Data.Text.Encoding.Error
imagPart from Data.Complex
infinity from GHC.Real
initDef from Protolude.Safe
initMay from Protolude.Safe
initSafe from Protolude.Safe
inits from Data.OldList
integralEnumFrom from GHC.Real
integralEnumFromThen from GHC.Real
integralEnumFromThenTo from GHC.Real
integralEnumFromTo from GHC.Real
interact from Data.Text.IO
intercalate from Data.OldList
interruptible from GHC.IO
intersperse from Data.OldList
ioError from GHC.IO.Exception
isCurrentThreadBound from Control.Concurrent
isDenormalized from GHC.Float
isEmptyChan from Control.Concurrent.Chan
isEmptyMVar from GHC.MVar
isIEEE from GHC.Float
isInfinite from GHC.Float
isJust from Data.Maybe
isLeft from Data.Either
isNaN from GHC.Float
isNegativeZero from GHC.Float
isNewtype from GHC.Generics
isNothing from Data.Maybe
isPrefixOf from Data.OldList
isRight from Data.Either
isSigned from Data.Bits
iterate from GHC.List
join from GHC.Base
killThread from GHC.Conc.Sync
lastDef from Protolude.Safe
lastMay from Protolude.Safe
lcm from GHC.Real
leftToMaybe from Protolude.Either
lefts from Data.Either
length from Data.Foldable
lenientDecode from Data.Text.Encoding.Error
lift from Control.Monad.Trans.Class
liftA from GHC.Base
liftA2 from GHC.Base
liftA3 from GHC.Base
liftAA2 from Protolude.Applicative
liftIO from Control.Monad.IO.Class
liftIO1 from Protolude
liftIO2 from Protolude
liftM from GHC.Base
liftM' from Protolude.Monad
liftM2 from GHC.Base
liftM2' from Protolude.Monad
liftM3 from GHC.Base
liftM4 from GHC.Base
liftM5 from GHC.Base
lines from Data.Text
link from Control.Concurrent.Async
link2 from Control.Concurrent.Async
list from Protolude.List
listToMaybe from Data.Maybe
local from Control.Monad.Reader.Class
log from GHC.Float
log1mexp from GHC.Float
log1p from GHC.Float
log1pexp from GHC.Float
logBase from GHC.Float
magnitude from Data.Complex
many from GHC.Base
map from Protolude
mapAccumL from Data.Traversable
mapAccumR from Data.Traversable
mapAndUnzipM from Control.Monad
mapExcept from Control.Monad.Trans.Except
mapExceptT from Control.Monad.Trans.Except
mapException from Control.Exception.Base
mapM from Data.Traversable
mapM_ from Data.Foldable
mapMaybe from Data.Maybe
mappend from GHC.Base
mask from GHC.IO
mask_ from GHC.IO
max from GHC.Classes
maxBound from GHC.Enum
maxInt from GHC.Base
maximum from Data.Foldable
maximumBy from Data.Foldable
maximumDef from Protolude.Safe
maximumMay from Protolude.Safe
maybe from Data.Maybe
maybeEmpty from Protolude.Either
maybeToEither from Protolude.Either
maybeToLeft from Protolude.Either
maybeToList from Data.Maybe
maybeToRight from Protolude.Either
mconcat from GHC.Base
mempty from GHC.Base
mfilter from Control.Monad
min from GHC.Classes
minBound from GHC.Enum
minInt from GHC.Base
minimum from Data.Foldable
minimumBy from Data.Foldable
minimumDef from Protolude.Safe
minimumMay from Protolude.Safe
mkPolar from Data.Complex
mkWeakMVar from Control.Concurrent.MVar
mkWeakThreadId from GHC.Conc.Sync
mod from GHC.Real
modify from Control.Monad.State.Class
modifyMVar from Control.Concurrent.MVar
modifyMVarMasked from Control.Concurrent.MVar
modifyMVarMasked_ from Control.Concurrent.MVar
modifyMVar_ from Control.Concurrent.MVar
moduleName from GHC.Generics
mplus from GHC.Base
msum from Data.Foldable
mtimesDefault from Data.Semigroup
myThreadId from GHC.Conc.Sync
mzero from GHC.Base
natVal from GHC.TypeLits
negate from GHC.Num
newChan from Control.Concurrent.Chan
newEmptyMVar from GHC.MVar
newMVar from GHC.MVar
newQSem from Control.Concurrent.QSem
newQSemN from Control.Concurrent.QSemN
nonEmpty from Data.List.NonEmpty
not from GHC.Classes
notANumber from GHC.Real
notElem from Data.Foldable
notImplemented from Debug
note from Protolude.Exceptions
null from Data.Foldable
numerator from GHC.Real
numericEnumFrom from GHC.Real
numericEnumFromThen from GHC.Real
numericEnumFromThenTo from GHC.Real
numericEnumFromTo from GHC.Real
objectName from GHC.ExecutionStack.Internal
odd from GHC.Real
on from Data.Function
onException from Control.Exception.Base
one from Protolude.Semiring
openFile from GHC.IO.Handle.FD
option from Data.Semigroup
optional from Control.Applicative
or from Data.Foldable
orAlt from Protolude.Applicative
orElse from GHC.Conc.Sync
orEmpty from Protolude.Applicative
ord from GHC.Base
ordNub from Protolude.List
otherwise from GHC.Base
overflowError from GHC.Real
packageName from GHC.Generics
panic from Protolude.Panic
partitionEithers from Data.Either
pass from Protolude
permutations from Data.OldList
phase from Data.Complex
pi from GHC.Float
polar from Data.Complex
poll from Control.Concurrent.Async
popCount from Data.Bits
popCountDefault from Data.Bits
pred from GHC.Enum
prettyCallStack from GHC.Exception
prettySrcLoc from GHC.Exception
print from Protolude
product from Protolude.List
properFraction from GHC.Real
pure from GHC.Base
purer from Protolude.Applicative
put from Control.Monad.State.Class
putByteString from Protolude.Show
putErrLn from Protolude.Show
putErrText from Protolude.Show
putLByteString from Protolude.Show
putLText from Protolude.Show
putMVar from GHC.MVar
putStr from Protolude.Show
putStrLn from Protolude.Show
putText from Protolude.Show
quot from GHC.Real
quotRem from GHC.Real
race from Control.Concurrent.Async
race_ from Control.Concurrent.Async
ratioPrec from GHC.Real
ratioPrec1 from GHC.Real
ratioZeroDenominatorError from GHC.Real
readChan from Control.Concurrent.Chan
readEither from Protolude
readFile from Data.Text.IO
readMVar from GHC.MVar
readMaybe from Protolude
reader from Control.Monad.Reader.Class
reads from Text.Read
realPart from Data.Complex
realToFrac from GHC.Real
recip from GHC.Real
reduce from GHC.Real
rem from GHC.Real
repeat from GHC.List
replace from Data.Text.Encoding.Error
replicate from GHC.List
replicateM from Control.Monad
replicateM_ from Control.Monad
repr from Data.Type.Coercion
retry from GHC.Conc.Sync
return from GHC.Base
reverse from GHC.List
rightToMaybe from Protolude.Either
rights from Data.Either
rnf from Control.DeepSeq
rotate from Data.Bits
rotateL from Data.Bits
rotateR from Data.Bits
round from GHC.Real
rtsSupportsBoundThreads from Control.Concurrent
runConcurrently from Control.Concurrent.Async
runExcept from Control.Monad.Trans.Except
runExceptT from Control.Monad.Trans.Except
runIdentity from Data.Functor.Identity
runInBoundThread from Control.Concurrent
runInUnboundThread from Control.Concurrent
runReader from Control.Monad.Trans.Reader
runReaderT from Control.Monad.Trans.Reader
runST from GHC.ST
runState from Control.Monad.Trans.State.Lazy
runStateT from Control.Monad.Trans.State.Lazy
scaleFloat from GHC.Float
scanl from GHC.List
scanl' from GHC.List
scanr from GHC.List
sconcat from Data.Semigroup
second from Data.Bifunctor
selDecidedStrictness from GHC.Generics
selName from GHC.Generics
selSourceStrictness from GHC.Generics
selSourceUnpackedness from GHC.Generics
seq from GHC.Prim
sequence from Data.Traversable
sequenceA from Data.Traversable
sequenceA_ from Data.Foldable
sequence_ from Data.Foldable
setBit from Data.Bits
setNumCapabilities from GHC.Conc.Sync
shift from Data.Bits
shiftL from Data.Bits
shiftR from Data.Bits
show from Protolude
showStackTrace from GHC.ExecutionStack
signalQSem from Control.Concurrent.QSem
signalQSemN from Control.Concurrent.QSemN
significand from GHC.Float
signum from GHC.Num
sin from GHC.Float
sinh from GHC.Float
snd from Data.Tuple
some from GHC.Base
someNatVal from GHC.TypeLits
someSymbolVal from GHC.TypeLits
sort from Data.OldList
sortBy from Data.OldList
sortOn from Protolude.List
sourceColumn from GHC.ExecutionStack.Internal
sourceFile from GHC.ExecutionStack.Internal
sourceLine from GHC.ExecutionStack.Internal
splitAt from GHC.List
sqrt from GHC.Float
srcLoc from GHC.ExecutionStack.Internal
state from Control.Monad.State.Class
stderr from GHC.IO.Handle.FD
stdin from GHC.IO.Handle.FD
stdout from GHC.IO.Handle.FD
stimes from Data.Semigroup
stimesIdempotent from Data.Semigroup
stimesIdempotentMonoid from Data.Semigroup
stimesMonoid from Data.Semigroup
strConv from Protolude.Conv
strictDecode from Data.Text.Encoding.Error
subsequences from Data.OldList
subtract from GHC.Num
succ from GHC.Enum
sum from Protolude.List
swap from Data.Tuple
swapMVar from Control.Concurrent.MVar
sym from Data.Type.Equality
symbolVal from GHC.TypeLits
tailDef from Protolude.Safe
tailMay from Protolude.Safe
tailSafe from Protolude.Safe
tails from Data.OldList
take from GHC.List
takeMVar from GHC.MVar
takeWhile from GHC.List
tan from GHC.Float
tanh from GHC.Float
testBit from Data.Bits
testBitDefault from Data.Bits
threadCapability from GHC.Conc.Sync
threadDelay from GHC.Conc.IO
threadWaitRead from Control.Concurrent
threadWaitReadSTM from Control.Concurrent
threadWaitWrite from Control.Concurrent
threadWaitWriteSTM from Control.Concurrent
throwE from Control.Monad.Trans.Except
throwError from Control.Monad.Error.Class
throwIO from Protolude
throwSTM from GHC.Conc.Sync
throwTo from Protolude
to from GHC.Generics
toEnum from GHC.Enum
toException from GHC.Exception
toInteger from GHC.Real
toIntegralSized from Data.Bits
toList from Data.Foldable
toRational from GHC.Real
toS from Protolude.Conv
toSL from Protolude.Conv
toStrict from Data.Text.Lazy
trace from Debug
traceIO from Debug
traceId from Debug
traceM from Debug
traceShow from Debug
traceShowId from Debug
traceShowM from Debug
trans from Data.Type.Equality
transpose from Data.OldList
traverse from Data.Traversable
traverse_ from Data.Foldable
truncate from GHC.Real
try from Control.Exception.Base
tryIO from Protolude.Exceptions
tryJust from Control.Exception.Base
tryPutMVar from GHC.MVar
tryReadMVar from GHC.MVar
tryTakeMVar from GHC.MVar
typeRep from Data.Typeable.Internal
unComp1 from GHC.Generics
unGetChan from Control.Concurrent.Chan
unK1 from GHC.Generics
unM1 from GHC.Generics
uncons from Protolude
uncurry from Data.Tuple
undefined from Debug
unfoldr from Data.OldList
uninterruptibleMask from GHC.IO
uninterruptibleMask_ from GHC.IO
unless from Control.Monad
unlessM from Protolude.Bool
unlines from Data.Text
unsnoc from Protolude
until from GHC.Base
unwords from Data.Text
unzip from GHC.List
vacuous from Data.Void
void from Data.Functor
wait from Control.Concurrent.Async
waitAny from Control.Concurrent.Async
waitAnyCancel from Control.Concurrent.Async
waitAnyCatch from Control.Concurrent.Async
waitAnyCatchCancel from Control.Concurrent.Async
waitBoth from Control.Concurrent.Async
waitCatch from Control.Concurrent.Async
waitEither from Control.Concurrent.Async
waitEitherCancel from Control.Concurrent.Async
waitEitherCatch from Control.Concurrent.Async
waitEitherCatchCancel from Control.Concurrent.Async
waitEither_ from Control.Concurrent.Async
waitQSem from Control.Concurrent.QSem
waitQSemN from Control.Concurrent.QSemN
when from GHC.Base
whenM from Protolude.Bool
withAsync from Control.Concurrent.Async
withAsyncBound from Control.Concurrent.Async
withAsyncOn from Control.Concurrent.Async
withExcept from Control.Monad.Trans.Except
withExceptT from Control.Monad.Trans.Except
withFile from System.IO
withFrozenCallStack from GHC.Stack
withMVar from Control.Concurrent.MVar
withMVarMasked from Control.Concurrent.MVar
withState from Control.Monad.Trans.State.Lazy
witness from Debug
words from Data.Text
writeChan from Control.Concurrent.Chan
writeFile from Data.Text.IO
writeList2Chan from Control.Concurrent.Chan
xor from Data.Bits
zero from Protolude.Semiring
zeroBits from Data.Bits
zip from GHC.List
zipWith from GHC.List
zipWithM from Control.Monad
zipWithM_ from Control.Monad
|| from GHC.Classes
||^ from Protolude.Bool
+91
View File
@@ -0,0 +1,91 @@
name: protolude
version: 0.3.5
synopsis: A small prelude.
description: A sensible set of defaults for writing custom Preludes.
homepage: https://github.com/sdiehl/protolude
license: MIT
license-file: LICENSE
author: Stephen Diehl
maintainer: adamwespiser@gmail.com, stephen.m.diehl@gmail.com
copyright: 2016-2022 Stephen Diehl
category: Prelude
build-type: Simple
cabal-version: >=1.10
bug-reports: https://github.com/sdiehl/protolude/issues
tested-with:
GHC ==7.6.3
|| ==7.8.4
|| ==7.10.3
|| ==8.0.1
|| ==8.2.1
|| ==8.4.1
|| ==8.6.1
|| ==8.8.1
|| ==8.10.1
|| ==9.0.1
|| ==9.2.2
|| ==9.6.1
|| ==9.8.2
|| ==9.10.1
|| ==9.12.1
extra-source-files:
README.md
ChangeLog.md
source-repository head
type: git
location: git@github.com:protolude/protolude.git
library
exposed-modules:
Protolude
Protolude.Applicative
Protolude.Base
Protolude.Bifunctor
Protolude.Bool
Protolude.CallStack
Protolude.Conv
Protolude.ConvertText
Protolude.Debug
Protolude.Either
Protolude.Error
Protolude.Exceptions
Protolude.Functor
Protolude.List
Protolude.Monad
Protolude.Panic
Protolude.Partial
Protolude.Safe
Protolude.Semiring
Protolude.Show
Protolude.Unsafe
default-extensions:
NoImplicitPrelude
FlexibleContexts
MultiParamTypeClasses
OverloadedStrings
ghc-options: -Wall -fwarn-implicit-prelude
build-depends:
array >=0.4 && <0.6
, async >=2.0 && <2.3
, base >=4.6 && <4.22
, bytestring >=0.10 && <0.13
, containers >=0.5 && <0.8
, deepseq >=1.3 && <1.6
, ghc-prim >=0.3 && <0.14
, hashable >=1.2 && <1.6
, mtl >=2.1 && <2.4
, mtl-compat >=0.2 && <0.3
, stm >=2.4 && <2.6
, text >=1.2 && <2.2
, transformers >=0.2 && <0.7
, transformers-compat >=0.4 && <0.8
if !impl(ghc >=8.0)
build-depends: fail ==4.9.*
hs-source-dirs: src
default-language: Haskell2010
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,38 @@
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Applicative
( orAlt,
orEmpty,
eitherA,
purer,
liftAA2,
(<<*>>),
)
where
import Control.Applicative
import Data.Bool (Bool)
import Data.Either (Either (Left, Right))
import Data.Function ((.))
import Data.Monoid (Monoid (mempty))
orAlt :: (Alternative f, Monoid a) => f a -> f a
orAlt f = f <|> pure mempty
orEmpty :: Alternative f => Bool -> a -> f a
orEmpty b a = if b then pure a else empty
eitherA :: (Alternative f) => f a -> f b -> f (Either a b)
eitherA a b = (Left <$> a) <|> (Right <$> b)
purer :: (Applicative f, Applicative g) => a -> f (g a)
purer = pure . pure
liftAA2 :: (Applicative f, Applicative g) => (a -> b -> c) -> f (g a) -> f (g b) -> f (g c)
liftAA2 = liftA2 . liftA2
infixl 4 <<*>>
(<<*>>) :: (Applicative f, Applicative g) => f (g (a -> b)) -> f (g a) -> f (g b)
(<<*>>) = liftA2 (<*>)
+225
View File
@@ -0,0 +1,225 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE Unsafe #-}
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE ExplicitNamespaces #-}
module Protolude.Base (
module Base,
($!),
) where
-- Glorious Glasgow Haskell Compiler
#if defined(__GLASGOW_HASKELL__) && ( __GLASGOW_HASKELL__ >= 600 )
-- Base GHC types
import GHC.Num as Base (
Num(
(+),
(-),
(*),
negate,
abs,
signum,
fromInteger
)
, Integer
, subtract
)
import GHC.Enum as Base (
Bounded(minBound, maxBound)
, Enum(
succ,
pred,
toEnum,
fromEnum,
enumFrom,
enumFromThen,
enumFromTo,
enumFromThenTo
)
, boundedEnumFrom
, boundedEnumFromThen
)
import GHC.Real as Base (
(%)
, (/)
, Fractional
, Integral
, Ratio
, Rational
, Real
, RealFrac
, (^)
, (^%^)
, (^^)
, (^^%^^)
, ceiling
, denominator
, div
, divMod
#if MIN_VERSION_base(4,7,0)
, divZeroError
#endif
, even
, floor
, fromIntegral
, fromRational
, gcd
#if MIN_VERSION_base(4,9,0) && !MIN_VERSION_base(4,15,0)
#if defined(MIN_VERSION_integer_gmp)
, gcdInt'
, gcdWord'
#endif
#endif
, infinity
, integralEnumFrom
, integralEnumFromThen
, integralEnumFromThenTo
, integralEnumFromTo
, lcm
, mod
, notANumber
, numerator
, numericEnumFrom
, numericEnumFromThen
, numericEnumFromThenTo
, numericEnumFromTo
, odd
#if MIN_VERSION_base(4,7,0)
, overflowError
#endif
, properFraction
, quot
, quotRem
, ratioPrec
, ratioPrec1
#if MIN_VERSION_base(4,7,0)
, ratioZeroDenominatorError
#endif
, realToFrac
, recip
, reduce
, rem
, round
, showSigned
, toInteger
, toRational
, truncate
#if MIN_VERSION_base(4,12,0)
, underflowError
#endif
)
import GHC.Float as Base (
Float(F#)
, Double(D#)
, Floating (..)
, RealFloat(..)
, showFloat
, showSignedFloat
)
import GHC.Show as Base (
Show(showsPrec, show, showList)
)
import GHC.Exts as Base (
Constraint
, Ptr
, FunPtr
)
import GHC.Base as Base (
(++)
, seq
, asTypeOf
, ord
, maxInt
, minInt
, until
)
-- Exported for lifting into new functions.
import System.IO as Base (
print
, putStr
, putStrLn
)
import GHC.Types as Base (
Bool
, Char
, Int
, Word
, Ordering
, IO
#if ( __GLASGOW_HASKELL__ >= 710 )
, Coercible
#endif
)
#if ( __GLASGOW_HASKELL__ >= 710 )
import GHC.StaticPtr as Base (StaticPtr)
#endif
#if ( __GLASGOW_HASKELL__ >= 800 )
import GHC.OverloadedLabels as Base (
IsLabel(fromLabel)
)
import GHC.ExecutionStack as Base (
Location(Location, srcLoc, objectName, functionName)
, SrcLoc(SrcLoc, sourceColumn, sourceLine, sourceColumn)
, getStackTrace
, showStackTrace
)
import GHC.Stack as Base (
CallStack
, type HasCallStack
, callStack
, prettySrcLoc
, currentCallStack
, getCallStack
, prettyCallStack
, withFrozenCallStack
)
#endif
#if ( __GLASGOW_HASKELL__ >= 710 )
import GHC.TypeLits as Base (
Symbol
, SomeSymbol(SomeSymbol)
, Nat
, SomeNat(SomeNat)
, CmpNat
, KnownSymbol
, KnownNat
, natVal
, someNatVal
, symbolVal
, someSymbolVal
)
#endif
#if ( __GLASGOW_HASKELL__ >= 802 )
import GHC.Records as Base (
HasField(getField)
)
#endif
#if ( __GLASGOW_HASKELL__ >= 800 )
import Data.Kind as Base (
type Type
#if ( __GLASGOW_HASKELL__ < 805 )
, type (*)
#endif
, type Type
)
#endif
-- Default Prelude defines this at the toplevel module, so we do as well.
infixr 0 $!
($!) :: (a -> b) -> a -> b
f $! x = let !vx = x in f vx
#endif
+51
View File
@@ -0,0 +1,51 @@
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Bifunctor
( Bifunctor,
bimap,
first,
second,
)
where
import Control.Applicative (Const (Const))
import Data.Either (Either (Left, Right))
import Data.Function ((.), id)
class Bifunctor p where
{-# MINIMAL bimap | first, second #-}
bimap :: (a -> b) -> (c -> d) -> p a c -> p b d
bimap f g = first f . second g
first :: (a -> b) -> p a c -> p b c
first f = bimap f id
second :: (b -> c) -> p a b -> p a c
second = bimap id
instance Bifunctor (,) where
bimap f g ~(a, b) = (f a, g b)
instance Bifunctor ((,,) x1) where
bimap f g ~(x1, a, b) = (x1, f a, g b)
instance Bifunctor ((,,,) x1 x2) where
bimap f g ~(x1, x2, a, b) = (x1, x2, f a, g b)
instance Bifunctor ((,,,,) x1 x2 x3) where
bimap f g ~(x1, x2, x3, a, b) = (x1, x2, x3, f a, g b)
instance Bifunctor ((,,,,,) x1 x2 x3 x4) where
bimap f g ~(x1, x2, x3, x4, a, b) = (x1, x2, x3, x4, f a, g b)
instance Bifunctor ((,,,,,,) x1 x2 x3 x4 x5) where
bimap f g ~(x1, x2, x3, x4, x5, a, b) = (x1, x2, x3, x4, x5, f a, g b)
instance Bifunctor Either where
bimap f _ (Left a) = Left (f a)
bimap _ g (Right b) = Right (g b)
instance Bifunctor Const where
bimap f _ (Const a) = Const (f a)
+64
View File
@@ -0,0 +1,64 @@
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Bool (
whenM
, unlessM
, ifM
, guardM
, bool
, (&&^)
, (||^)
, (<&&>)
, (<||>)
) where
import Data.Bool (Bool(True, False), (&&), (||))
import Data.Function (flip)
import Control.Applicative(Applicative, liftA2)
import Control.Monad (Monad, MonadPlus, return, when, unless, guard, (>>=), (=<<))
bool :: a -> a -> Bool -> a
bool f t p = if p then t else f
whenM :: Monad m => m Bool -> m () -> m ()
whenM p m =
p >>= flip when m
unlessM :: Monad m => m Bool -> m () -> m ()
unlessM p m =
p >>= flip unless m
ifM :: Monad m => m Bool -> m a -> m a -> m a
ifM p x y = p >>= \b -> if b then x else y
guardM :: MonadPlus m => m Bool -> m ()
guardM f = guard =<< f
-- | The '||' operator lifted to a monad. If the first
-- argument evaluates to 'True' the second argument will not
-- be evaluated.
infixr 2 ||^ -- same as (||)
(||^) :: Monad m => m Bool -> m Bool -> m Bool
(||^) a b = ifM a (return True) b
infixr 2 <||>
-- | '||' lifted to an Applicative.
-- Unlike '||^' the operator is __not__ short-circuiting.
(<||>) :: Applicative a => a Bool -> a Bool -> a Bool
(<||>) = liftA2 (||)
{-# INLINE (<||>) #-}
-- | The '&&' operator lifted to a monad. If the first
-- argument evaluates to 'False' the second argument will not
-- be evaluated.
infixr 3 &&^ -- same as (&&)
(&&^) :: Monad m => m Bool -> m Bool -> m Bool
(&&^) a b = ifM a b (return False)
infixr 3 <&&>
-- | '&&' lifted to an Applicative.
-- Unlike '&&^' the operator is __not__ short-circuiting.
(<&&>) :: Applicative a => a Bool -> a Bool -> a Bool
(<&&>) = liftA2 (&&)
{-# INLINE (<&&>) #-}
+18
View File
@@ -0,0 +1,18 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE ImplicitParams #-}
{-# LANGUAGE ConstraintKinds #-}
module Protolude.CallStack
( HasCallStack
) where
#if MIN_VERSION_base(4,9,0)
import GHC.Stack (HasCallStack)
#elif MIN_VERSION_base(4,8,1)
import qualified GHC.Stack
type HasCallStack = (?callStack :: GHC.Stack.CallStack)
#else
import GHC.Exts (Constraint)
type HasCallStack = (() :: Constraint)
#endif
+78
View File
@@ -0,0 +1,78 @@
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE TypeSynonymInstances #-}
-- | An alternative to 'Protolude.ConvertText' that includes
-- partial conversions. Not re-exported by 'Protolude'.
module Protolude.Conv (
StringConv
, strConv
, toS
, toSL
, Leniency (Lenient, Strict)
) where
import Data.ByteString.Char8 as B
import Data.ByteString.Lazy.Char8 as LB
import Data.Text as T
import Data.Text.Encoding as T
import Data.Text.Encoding.Error as T
import Data.Text.Lazy as LT
import Data.Text.Lazy.Encoding as LT
import Protolude.Base
import Data.Eq (Eq)
import Data.Ord (Ord)
import Data.Function ((.), id)
import Data.String (String)
import Control.Applicative (pure)
data Leniency = Lenient | Strict
deriving (Eq,Show,Ord,Enum,Bounded)
class StringConv a b where
strConv :: Leniency -> a -> b
toS :: StringConv a b => a -> b
toS = strConv Strict
toSL :: StringConv a b => a -> b
toSL = strConv Lenient
instance StringConv String String where strConv _ = id
instance StringConv String B.ByteString where strConv _ = B.pack
instance StringConv String LB.ByteString where strConv _ = LB.pack
instance StringConv String T.Text where strConv _ = T.pack
instance StringConv String LT.Text where strConv _ = LT.pack
instance StringConv B.ByteString String where strConv _ = B.unpack
instance StringConv B.ByteString B.ByteString where strConv _ = id
instance StringConv B.ByteString LB.ByteString where strConv _ = LB.fromChunks . pure
instance StringConv B.ByteString T.Text where strConv = decodeUtf8T
instance StringConv B.ByteString LT.Text where strConv l = strConv l . LB.fromChunks . pure
instance StringConv LB.ByteString String where strConv _ = LB.unpack
instance StringConv LB.ByteString B.ByteString where strConv _ = B.concat . LB.toChunks
instance StringConv LB.ByteString LB.ByteString where strConv _ = id
instance StringConv LB.ByteString T.Text where strConv l = decodeUtf8T l . strConv l
instance StringConv LB.ByteString LT.Text where strConv = decodeUtf8LT
instance StringConv T.Text String where strConv _ = T.unpack
instance StringConv T.Text B.ByteString where strConv _ = T.encodeUtf8
instance StringConv T.Text LB.ByteString where strConv l = strConv l . T.encodeUtf8
instance StringConv T.Text LT.Text where strConv _ = LT.fromStrict
instance StringConv T.Text T.Text where strConv _ = id
instance StringConv LT.Text String where strConv _ = LT.unpack
instance StringConv LT.Text T.Text where strConv _ = LT.toStrict
instance StringConv LT.Text LT.Text where strConv _ = id
instance StringConv LT.Text LB.ByteString where strConv _ = LT.encodeUtf8
instance StringConv LT.Text B.ByteString where strConv l = strConv l . LT.encodeUtf8
decodeUtf8T :: Leniency -> B.ByteString -> T.Text
decodeUtf8T Lenient = T.decodeUtf8With T.lenientDecode
decodeUtf8T Strict = T.decodeUtf8With T.strictDecode
decodeUtf8LT :: Leniency -> LB.ByteString -> LT.Text
decodeUtf8LT Lenient = LT.decodeUtf8With T.lenientDecode
decodeUtf8LT Strict = LT.decodeUtf8With T.strictDecode
@@ -0,0 +1,50 @@
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE Safe #-}
-- | Non-partial text conversion typeclass and functions.
-- For an alternative with partial conversions import 'Protolude.Conv'.
module Protolude.ConvertText (
ConvertText (toS)
, toUtf8
, toUtf8Lazy
) where
import qualified Data.ByteString as B
import qualified Data.ByteString.Lazy as LB
import qualified Data.Text as T
import qualified Data.Text.Lazy as LT
import Data.Function (id, (.))
import Data.String (String)
import Data.Text.Encoding (encodeUtf8)
-- | Convert from one Unicode textual type to another. Not for serialization/deserialization,
-- so doesn't have instances for bytestrings.
class ConvertText a b where
toS :: a -> b
instance ConvertText String String where toS = id
instance ConvertText String T.Text where toS = T.pack
instance ConvertText String LT.Text where toS = LT.pack
instance ConvertText T.Text String where toS = T.unpack
instance ConvertText T.Text LT.Text where toS = LT.fromStrict
instance ConvertText T.Text T.Text where toS = id
instance ConvertText LT.Text String where toS = LT.unpack
instance ConvertText LT.Text T.Text where toS = LT.toStrict
instance ConvertText LT.Text LT.Text where toS = id
instance ConvertText LB.ByteString B.ByteString where toS = LB.toStrict
instance ConvertText LB.ByteString LB.ByteString where toS = id
instance ConvertText B.ByteString B.ByteString where toS = id
instance ConvertText B.ByteString LB.ByteString where toS = LB.fromStrict
toUtf8 :: ConvertText a T.Text => a -> B.ByteString
toUtf8 =
encodeUtf8 . toS
toUtf8Lazy :: ConvertText a T.Text => a -> LB.ByteString
toUtf8Lazy =
LB.fromStrict . encodeUtf8 . toS
+69
View File
@@ -0,0 +1,69 @@
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-warnings-deprecations #-}
module Protolude.Debug (
undefined,
trace,
traceM,
traceId,
traceIO,
traceShow,
traceShowId,
traceShowM,
notImplemented,
witness,
) where
import Data.Text (Text, unpack)
import Control.Monad (Monad, return)
import qualified Protolude.Base as P
import Protolude.Error (error)
import Protolude.Show (Print, hPutStrLn)
import System.IO(stderr)
import System.IO.Unsafe (unsafePerformIO)
{-# WARNING trace "'trace' remains in code" #-}
trace :: Print b => b -> a -> a
trace string expr = unsafePerformIO (do
hPutStrLn stderr string
return expr)
{-# WARNING traceIO "'traceIO' remains in code" #-}
traceIO :: Print b => b -> a -> P.IO a
traceIO string expr = do
hPutStrLn stderr string
return expr
{-# WARNING traceShow "'traceShow' remains in code" #-}
traceShow :: P.Show a => a -> b -> b
traceShow a b = trace (P.show a) b
{-# WARNING traceShowId "'traceShowId' remains in code" #-}
traceShowId :: P.Show a => a -> a
traceShowId a = trace (P.show a) a
{-# WARNING traceShowM "'traceShowM' remains in code" #-}
traceShowM :: (P.Show a, Monad m) => a -> m ()
traceShowM a = trace (P.show a) (return ())
{-# WARNING traceM "'traceM' remains in code" #-}
traceM :: (Monad m) => Text -> m ()
traceM s = trace (unpack s) (return ())
{-# WARNING traceId "'traceId' remains in code" #-}
traceId :: Text -> Text
traceId s = trace s s
{-# WARNING notImplemented "'notImplemented' remains in code" #-}
notImplemented :: a
notImplemented = error "Not implemented"
{-# WARNING undefined "'undefined' remains in code" #-}
undefined :: a
undefined = error "Prelude.undefined"
witness :: a
witness = error "Type witness should not be evaluated"
+51
View File
@@ -0,0 +1,51 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Either (
maybeToLeft
, maybeToRight
, leftToMaybe
, rightToMaybe
, maybeEmpty
, maybeToEither
, fromLeft
, fromRight
) where
import Data.Function (const)
import Data.Monoid (Monoid, mempty)
import Data.Maybe (Maybe(Nothing, Just), maybe)
import Data.Either (Either(Left, Right), either)
#if MIN_VERSION_base(4,10,0)
import Data.Either (fromLeft, fromRight)
#else
-- | Return the contents of a 'Right'-value or a default value otherwise.
fromLeft :: a -> Either a b -> a
fromLeft _ (Left a) = a
fromLeft a _ = a
-- | Return the contents of a 'Right'-value or a default value otherwise.
fromRight :: b -> Either a b -> b
fromRight _ (Right b) = b
fromRight b _ = b
#endif
leftToMaybe :: Either l r -> Maybe l
leftToMaybe = either Just (const Nothing)
rightToMaybe :: Either l r -> Maybe r
rightToMaybe = either (const Nothing) Just
maybeToRight :: l -> Maybe r -> Either l r
maybeToRight l = maybe (Left l) Right
maybeToLeft :: r -> Maybe l -> Either l r
maybeToLeft r = maybe (Right r) Left
maybeEmpty :: Monoid b => (a -> b) -> Maybe a -> b
maybeEmpty = maybe mempty
maybeToEither :: e -> Maybe a -> Either e a
maybeToEither e Nothing = Left e
maybeToEither _ (Just a) = Right a
+52
View File
@@ -0,0 +1,52 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE ImplicitParams #-}
{-# LANGUAGE ExistentialQuantification #-}
#if ( __GLASGOW_HASKELL__ >= 800 )
{-# LANGUAGE TypeInType #-}
#endif
#if MIN_VERSION_base(4,9,0)
{-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
#endif
module Protolude.Error
( error
) where
import Data.Text (Text, unpack)
#if MIN_VERSION_base(4,9,0)
-- Full stack trace.
import GHC.Prim (TYPE, raise#)
import GHC.Types (RuntimeRep)
import Protolude.CallStack (HasCallStack)
import GHC.Exception (errorCallWithCallStackException)
{-# WARNING error "'error' remains in code" #-}
error :: forall (r :: RuntimeRep) . forall (a :: TYPE r) . HasCallStack => Text -> a
error s = raise# (errorCallWithCallStackException (unpack s) ?callStack)
#elif MIN_VERSION_base(4,7,0)
-- Basic Call Stack with callsite.
import GHC.Prim (raise#)
import GHC.Exception (errorCallException)
{-# WARNING error "'error' remains in code" #-}
error :: Text -> a
error s = raise# (errorCallException (unpack s))
#else
-- No exception tracing.
import GHC.Types
import GHC.Exception
{-# WARNING error "'error' remains in code" #-}
error :: Text -> a
error s = throw (ErrorCall (unpack s))
#endif
+35
View File
@@ -0,0 +1,35 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Exceptions (
hush,
note,
tryIO,
) where
import Protolude.Base (IO)
import Data.Function ((.))
import Control.Monad.Trans (liftIO)
import Control.Monad.IO.Class (MonadIO)
import Control.Monad.Except (ExceptT(ExceptT), MonadError, throwError)
import Control.Exception as Exception
import Control.Applicative
import Data.Maybe (Maybe, maybe)
import Data.Either (Either(Left,Right))
hush :: Alternative m => Either e a -> m a
hush (Left _) = empty
hush (Right x) = pure x
-- To suppress redundant applicative constraint warning on GHC 8.0
#if ( __GLASGOW_HASKELL__ >= 800 )
note :: (MonadError e m) => e -> Maybe a -> m a
note err = maybe (throwError err) pure
#else
note :: (MonadError e m, Applicative m) => e -> Maybe a -> m a
note err = maybe (throwError err) pure
#endif
tryIO :: MonadIO m => IO a -> ExceptT IOException m a
tryIO = ExceptT . liftIO . Exception.try
+62
View File
@@ -0,0 +1,62 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Functor (
Functor(fmap),
($>),
(<$),
(<$>),
(<<$>>),
(<&>),
void,
foreach,
) where
import Data.Function ((.), flip)
#if MIN_VERSION_base(4,11,0)
import Data.Functor ((<&>))
#endif
#if MIN_VERSION_base(4,7,0)
import Data.Functor (
Functor(fmap)
, (<$)
, ($>)
, (<$>)
, void
)
#else
import Data.Functor (
Functor(fmap)
, (<$)
, (<$>)
)
infixl 4 $>
($>) :: Functor f => f a -> b -> f b
($>) = flip (<$)
void :: Functor f => f a -> f ()
void x = () <$ x
#endif
infixl 4 <<$>>
(<<$>>) :: (Functor f, Functor g) => (a -> b) -> f (g a) -> f (g b)
(<<$>>) = fmap . fmap
foreach :: Functor f => f a -> (a -> b) -> f b
foreach = flip fmap
#if !MIN_VERSION_base(4,11,0)
-- | Infix version of foreach.
--
-- '<&>' is to '<$>' what '&' is to '$'.
infixl 1 <&>
(<&>) :: Functor f => f a -> (a -> b) -> f b
(<&>) = foreach
#endif
+52
View File
@@ -0,0 +1,52 @@
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE Safe #-}
module Protolude.List
( head,
ordNub,
sortOn,
list,
product,
sum,
groupBy,
)
where
import Control.Applicative (pure)
import Data.Foldable (Foldable, foldl', foldr)
import Data.Function ((.))
import Data.Functor (fmap)
import Data.List (groupBy, sortBy)
import Data.Maybe (Maybe (Nothing))
import Data.Ord (Ord, comparing)
import qualified Data.Set as Set
import Prelude ((*), (+), Num)
head :: (Foldable f) => f a -> Maybe a
head = foldr (\x _ -> pure x) Nothing
sortOn :: (Ord o) => (a -> o) -> [a] -> [a]
sortOn = sortBy . comparing
-- O(n * log n)
ordNub :: (Ord a) => [a] -> [a]
ordNub l = go Set.empty l
where
go _ [] = []
go s (x : xs) =
if x `Set.member` s
then go s xs
else x : go (Set.insert x s) xs
list :: [b] -> (a -> b) -> [a] -> [b]
list def f xs = case xs of
[] -> def
_ -> fmap f xs
{-# INLINE product #-}
product :: (Foldable f, Num a) => f a -> a
product = foldl' (*) 1
{-# INLINE sum #-}
sum :: (Foldable f, Num a) => f a -> a
sum = foldl' (+) 0
+69
View File
@@ -0,0 +1,69 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Monad (
Monad((>>=), return)
, MonadPlus(mzero, mplus)
, (=<<)
, (>=>)
, (<=<)
, (>>)
, forever
, join
, mfilter
, filterM
, mapAndUnzipM
, zipWithM
, zipWithM_
, foldM
, foldM_
, replicateM
, replicateM_
, concatMapM
, guard
, when
, unless
, liftM
, liftM2
, liftM3
, liftM4
, liftM5
, liftM'
, liftM2'
, ap
, (<$!>)
) where
import Protolude.Base (seq)
import Data.List (concat)
import Control.Monad
concatMapM :: Monad m => (a -> m [b]) -> [a] -> m [b]
concatMapM f xs = liftM concat (mapM f xs)
liftM' :: Monad m => (a -> b) -> m a -> m b
liftM' = (<$!>)
{-# INLINE liftM' #-}
liftM2' :: (Monad m) => (a -> b -> c) -> m a -> m b -> m c
liftM2' f a b = do
x <- a
y <- b
let z = f x y
z `seq` return z
{-# INLINE liftM2' #-}
#if !MIN_VERSION_base(4,8,0)
(<$!>) :: Monad m => (a -> b) -> m a -> m b
f <$!> m = do
x <- m
let z = f x
z `seq` return z
{-# INLINE (<$!>) #-}
#endif
+27
View File
@@ -0,0 +1,27 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE DeriveDataTypeable #-}
#if MIN_VERSION_base(4,9,0)
{-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
#endif
module Protolude.Panic (
FatalError(FatalError, fatalErrorMessage),
panic,
) where
import Protolude.Base (Show)
import Protolude.CallStack (HasCallStack)
import Data.Text (Text)
import Data.Typeable (Typeable)
import Control.Exception as X
-- | Uncatchable exceptions thrown and never caught.
newtype FatalError = FatalError { fatalErrorMessage :: Text }
deriving (Show, Typeable)
instance Exception FatalError
panic :: HasCallStack => Text -> a
panic a = throw (FatalError a)
+26
View File
@@ -0,0 +1,26 @@
module Protolude.Partial
( head,
init,
tail,
last,
foldl,
foldr,
foldl',
foldr',
foldr1,
foldl1,
cycle,
maximum,
minimum,
(!!),
sum,
product,
fromJust,
read,
)
where
import Data.Foldable (foldl, foldl', foldl1, foldr, foldr', foldr1, product, sum)
import Data.List ((!!), cycle, head, init, last, maximum, minimum, tail)
import Data.Maybe (fromJust)
import Text.Read (read)
+137
View File
@@ -0,0 +1,137 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Safe #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Safe (
headMay
, headDef
, initMay
, initDef
, initSafe
, tailMay
, tailDef
, tailSafe
, lastDef
, lastMay
, foldr1May
, foldl1May
, foldl1May'
, maximumMay
, minimumMay
, maximumDef
, minimumDef
, atMay
, atDef
) where
import Data.Ord (Ord, (<))
import Data.Int (Int)
import Data.Char (Char)
import Data.Bool (Bool, otherwise)
import Data.Maybe (Maybe(Nothing, Just), fromMaybe)
import Data.Either (Either(Left, Right))
import Data.Function ((.))
import Data.List (null, head, last, tail, init, maximum, minimum, foldr1, foldl1, foldl1', (++))
import Prelude ((-))
import GHC.Show (show)
liftMay :: (a -> Bool) -> (a -> b) -> (a -> Maybe b)
liftMay test f val = if test val then Nothing else Just (f val)
-------------------------------------------------------------------------------
-- Head
-------------------------------------------------------------------------------
headMay :: [a] -> Maybe a
headMay = liftMay null head
headDef :: a -> [a] -> a
headDef def = fromMaybe def . headMay
-------------------------------------------------------------------------------
-- Init
-------------------------------------------------------------------------------
initMay :: [a] -> Maybe [a]
initMay = liftMay null init
initDef :: [a] -> [a] -> [a]
initDef def = fromMaybe def . initMay
initSafe :: [a] -> [a]
initSafe = initDef []
-------------------------------------------------------------------------------
-- Tail
-------------------------------------------------------------------------------
tailMay :: [a] -> Maybe [a]
tailMay = liftMay null tail
tailDef :: [a] -> [a] -> [a]
tailDef def = fromMaybe def . tailMay
tailSafe :: [a] -> [a]
tailSafe = tailDef []
-------------------------------------------------------------------------------
-- Last
-------------------------------------------------------------------------------
lastMay :: [a] -> Maybe a
lastMay = liftMay null last
lastDef :: a -> [a] -> a
lastDef def = fromMaybe def . lastMay
-------------------------------------------------------------------------------
-- Maximum
-------------------------------------------------------------------------------
minimumMay, maximumMay :: Ord a => [a] -> Maybe a
minimumMay = liftMay null minimum
maximumMay = liftMay null maximum
minimumDef, maximumDef :: Ord a => a -> [a] -> a
minimumDef def = fromMaybe def . minimumMay
maximumDef def = fromMaybe def . maximumMay
-------------------------------------------------------------------------------
-- Foldr
-------------------------------------------------------------------------------
foldr1May, foldl1May, foldl1May' :: (a -> a -> a) -> [a] -> Maybe a
foldr1May = liftMay null . foldr1
-------------------------------------------------------------------------------
-- Foldl
-------------------------------------------------------------------------------
foldl1May = liftMay null . foldl1
foldl1May' = liftMay null . foldl1'
-------------------------------------------------------------------------------
-- At
-------------------------------------------------------------------------------
at_ :: [a] -> Int -> Either [Char] a
at_ ys o
| o < 0 = Left ("index must not be negative, index=" ++ show o)
| otherwise = f o ys
where
f 0 (x:_) = Right x
f i (_:xs) = f (i-1) xs
f i [] = Left ("index too large, index=" ++ show o ++ ", length=" ++ show (o-i))
atMay :: [a] -> Int -> Maybe a
atMay xs i = case xs `at_` i of
Left _ -> Nothing
Right val -> Just val
atDef :: a -> [a] -> Int -> a
atDef def xs i = case xs `at_` i of
Left _ -> def
Right val -> val
+22
View File
@@ -0,0 +1,22 @@
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Semiring
( Semiring,
one,
(<.>),
zero,
)
where
import Data.Monoid
-- | Alias for 'mempty'
zero :: Monoid m => m
zero = mempty
class Monoid m => Semiring m where
{-# MINIMAL one, (<.>) #-}
one :: m
(<.>) :: m -> m -> m
+83
View File
@@ -0,0 +1,83 @@
{-# LANGUAGE ExtendedDefaultRules #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Show
( Print,
hPutStr,
putStr,
hPutStrLn,
putStrLn,
putErrLn,
putText,
putErrText,
putLText,
putByteString,
putLByteString,
)
where
import Control.Monad.IO.Class (MonadIO, liftIO)
import qualified Data.ByteString.Char8 as BS
import qualified Data.ByteString.Lazy.Char8 as BL
import Data.Function ((.))
import qualified Data.Text as T
import qualified Data.Text.IO as T
import qualified Data.Text.Lazy as TL
import qualified Data.Text.Lazy.IO as TL
import qualified Protolude.Base as Base
import qualified System.IO as Base
import System.IO (Handle, stderr, stdout)
class Print a where
hPutStr :: MonadIO m => Handle -> a -> m ()
putStr :: MonadIO m => a -> m ()
putStr = hPutStr stdout
hPutStrLn :: MonadIO m => Handle -> a -> m ()
putStrLn :: MonadIO m => a -> m ()
putStrLn = hPutStrLn stdout
putErrLn :: MonadIO m => a -> m ()
putErrLn = hPutStrLn stderr
instance Print T.Text where
hPutStr = \h -> liftIO . T.hPutStr h
hPutStrLn = \h -> liftIO . T.hPutStrLn h
instance Print TL.Text where
hPutStr = \h -> liftIO . TL.hPutStr h
hPutStrLn = \h -> liftIO . TL.hPutStrLn h
instance Print BS.ByteString where
hPutStr = \h -> liftIO . BS.hPutStr h
hPutStrLn = \h -> liftIO . BS.hPutStrLn h
instance Print BL.ByteString where
hPutStr = \h -> liftIO . BL.hPutStr h
hPutStrLn = \h -> liftIO . BL.hPutStrLn h
instance Print [Base.Char] where
hPutStr = \h -> liftIO . Base.hPutStr h
hPutStrLn = \h -> liftIO . Base.hPutStrLn h
-- For forcing type inference
putText :: MonadIO m => T.Text -> m ()
putText = putStrLn
{-# SPECIALIZE putText :: T.Text -> Base.IO () #-}
putLText :: MonadIO m => TL.Text -> m ()
putLText = putStrLn
{-# SPECIALIZE putLText :: TL.Text -> Base.IO () #-}
putByteString :: MonadIO m => BS.ByteString -> m ()
putByteString = putStrLn
{-# SPECIALIZE putByteString :: BS.ByteString -> Base.IO () #-}
putLByteString :: MonadIO m => BL.ByteString -> m ()
putLByteString = putStrLn
{-# SPECIALIZE putLByteString :: BL.ByteString -> Base.IO () #-}
putErrText :: MonadIO m => T.Text -> m ()
putErrText = putErrLn
{-# SPECIALIZE putErrText :: T.Text -> Base.IO () #-}
+75
View File
@@ -0,0 +1,75 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE Unsafe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Protolude.Unsafe (
unsafeHead,
unsafeTail,
unsafeInit,
unsafeLast,
unsafeFromJust,
unsafeIndex,
unsafeThrow,
unsafeRead,
) where
import Protolude.Base (Int)
#if ( __GLASGOW_HASKELL__ >= 800 )
import Protolude.Base (HasCallStack)
#endif
import Data.Char (Char)
import Text.Read (Read, read)
import qualified Data.List as List
import qualified Data.Maybe as Maybe
import qualified Control.Exception as Exc
unsafeThrow :: Exc.Exception e => e -> a
unsafeThrow = Exc.throw
#if ( __GLASGOW_HASKELL__ >= 800 )
unsafeHead :: HasCallStack => [a] -> a
unsafeHead = List.head
unsafeTail :: HasCallStack => [a] -> [a]
unsafeTail = List.tail
unsafeInit :: HasCallStack => [a] -> [a]
unsafeInit = List.init
unsafeLast :: HasCallStack => [a] -> a
unsafeLast = List.last
unsafeFromJust :: HasCallStack => Maybe.Maybe a -> a
unsafeFromJust = Maybe.fromJust
unsafeIndex :: HasCallStack => [a] -> Int -> a
unsafeIndex = (List.!!)
unsafeRead :: (HasCallStack, Read a) => [Char] -> a
unsafeRead = Text.Read.read
#endif
#if ( __GLASGOW_HASKELL__ < 800 )
unsafeHead :: [a] -> a
unsafeHead = List.head
unsafeTail :: [a] -> [a]
unsafeTail = List.tail
unsafeInit :: [a] -> [a]
unsafeInit = List.init
unsafeLast :: [a] -> a
unsafeLast = List.last
unsafeFromJust :: Maybe.Maybe a -> a
unsafeFromJust = Maybe.fromJust
unsafeIndex :: [a] -> Int -> a
unsafeIndex = (List.!!)
unsafeRead :: Read a => [Char] -> a
unsafeRead = Text.Read.read
#endif
+7
View File
@@ -0,0 +1,7 @@
resolver: lts-14.0
packages:
- '.'
extra-deps:
- fail-4.9.0.0
flags: {}
extra-package-dbs: []
+19
View File
@@ -0,0 +1,19 @@
#!/usr/bin/env bash
set -e
stack build --resolver lts-4.0
stack build --resolver lts-5.0
stack build --resolver lts-6.0
stack build --resolver lts-7.0
stack build --resolver lts-8.0
stack build --resolver lts-9.0
stack build --resolver lts-10.0
stack build --resolver lts-11.0
stack build --resolver lts-12.0
stack build --resolver lts-13.0
stack build --resolver lts-14.0
stack build --resolver lts-15.0
stack build --resolver lts-16.0
stack build --resolver lts-17.0
stack build --resolver lts-18.0
stack build --resolver lts-19.0