2016-06-09 21:18:10 -04:00
2016-06-09 21:18:10 -04:00
2016-04-18 18:09:50 -04:00
2016-06-08 19:05:43 -04:00
2016-06-08 19:05:43 -04:00
2016-04-09 19:35:23 -04:00
2016-06-08 19:47:08 -04:00
2016-06-08 19:15:03 -04:00
2016-04-08 11:25:58 -04:00
2016-06-08 19:47:08 -04:00

Protolude

Build Status Hackage

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.
  • Type for common data structures in scope.
  • Type for all common string types in scope.
  • 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.
  • Compatibility with GHC 8.0.
  • Includes Semiring for GHC >= 7.6.
  • Includes Bifunctor for GHC >= 7.6.
  • Includes Semigroup for GHC >= 7.6.

Supports:

  • GHC 7.6.1
  • GHC 7.6.2
  • GHC 7.6.3
  • GHC 7.8.1
  • GHC 7.8.2
  • GHC 7.8.3
  • GHC 7.8.4
  • GHC 7.10.1
  • GHC 7.10.2
  • GHC 7.10.3
  • GHC 8.0.1
  • GHC HEAD

Usage

{-# LANGUAGE NoImplicitPrelude #-}

import Protolude

License

Released under the MIT License. Copyright (c) 2016, Stephen Diehl

Languages
Haskell 67.3%
PLpgSQL 21.5%
Python 6.7%
Nix 4.3%
Shell 0.2%