Prelude -package:stack -package:turtle -package:xmonad-contrib is:package
Not on Stackage, so not searched.
A Prelude module replacement
Provide Prelude and Data.List with fixed content across GHC versions
This package allows you to write warning-free code that compiles with
versions of
base before and after AMP and FTP, that is,
base before and beginning with 4.8, respectively, and GHC
before and beginning with 7.10, respectively. It serves three
purposes:
- Prevent you from name clashes of FTP-Prelude with locally defined
functions having names like <*>, join,
foldMap.
- Prevent you from redundant import warnings if you manually import
Data.Monoid or Control.Applicative.
- Fix list functions to the list type, contrarily to the aim of the
FTP. This way you are saved from length (2,1) == 1 and
maximum (2,1) == 1, until you import
Data.Foldable.
You should add
import Prelude2010
import Prelude ()
to your modules. This way, you must change all affected modules. If
you want to avoid this you may try the
prelude2010 package or
if you already import Prelude explicitly, you may try to add
Default-Extensions: CPP, NoImplicitPrelude
CPP-Options: -DPrelude=Prelude2010
to your Cabal file.
In my opinion, this is the wrong way round. The presented Prelude2010
module should have been the one for GHC-7.10 and the Prelude with
added and generalized list functions should have been an additional
PreludeFTP, preferably exported by a separate package like all other
alternate Prelude projects. But the purpose of the FTP was to save
some import statements at the expense of blowing up the
Foldable class and prevent simple ways to write code that works
with GHC version before and starting with GHC-7.10 and that does not
provoke warnings.
Related packages:
- 'base-compat': The opposite approach - Make future function
definitions available in older GHC versions.
- haskell2010: Defines the Prelude for Haskell 2010.
Unfortunately, haskell2010 is not available anymore since
GHC-7.10, because of the AMP.
- 'numeric-prelude': It is intended to provide a refined numeric
class hierarchy but it also provides a non-numeric subset of the
Prelude that is more stable than the one of base.
Not on Stackage, so not searched.
Higher order versions of Prelude classes
Not on Stackage, so not searched.
An EDSL-motivated subset of the Prelude
Not on Stackage, so not searched.
Another kind of alternate Prelude file
Not on Stackage, so not searched.
Prelude for rest of us
Not on Stackage, so not searched.
A slightly better (but conservative) Prelude
A redefinition of the Prelude's Enum class in order to render it safe.
A redefinition of the Prelude's Enum class in order to render it safe.
That is, the Haskell Language Report defines pred, succ, fromEnum, and
toEnum to be partial functions when the type is Bounded, but this is
unacceptable. We define a new type-class hierarchy for enumeration
which is safe and also generalizes to cover types which can only be
enumerated in one direction.
Not on Stackage, so not searched.
Provide Prelude with fixed content across GHC versions
Not on Stackage, so not searched.
Generalizes List functions and replaces partials with NonEmpty equivalents.
Featureful preludes formed solely from the "base" package
A library which aims to reexport all the non-conflicting and most
general definitions from the "base" package. This includes APIs for
applicatives, arrows, monoids, foldables, traversables, exceptions,
generics, ST, MVars and STM. This package will never have any
dependencies other than "base". Besides a rich prelude it provides
limited ones like
BasePrelude.DataTypes, which only exports the
data-types defined across the "base" package, and
BasePrelude.Operators, which only exports the common operators.
Versioning policy The versioning policy of this package
deviates from PVP in the sense that its exports in part are
transitively determined by the version of "base". Therefore it's
recommended for the users of "base-prelude" to specify the bounds of
"base" as well.
An experimental alternative hierarchy of numeric type classes
The package provides an experimental alternative hierarchy of numeric
type classes. The type classes are more oriented at mathematical
structures and their methods come with laws that the instances must
fulfill.
Not on Stackage, so not searched.
"base" package sans "Prelude" module
Clash: a functional hardware description language - Prelude library
Clash is a functional hardware description language that borrows both
its syntax and semantics from the functional programming language
Haskell. The Clash compiler transforms these high-level descriptions
to low-level synthesizable VHDL, Verilog, or SystemVerilog.
Features of Clash:
- Strongly typed, but with a very high degree of type inference,
enabling both safe and fast prototyping using concise
descriptions.
- Interactive REPL: load your designs in an interpreter and easily
test all your component without needing to setup a test bench.
- Higher-order functions, with type inference, result in designs
that are fully parametric by default.
- Synchronous sequential circuit design based on streams of values,
called Signals, lead to natural descriptions of feedback
loops.
- Support for multiple clock domains, with type safe clock domain
crossing.
This package provides:
- Prelude library containing datatypes and functions for circuit
design
To use the library:
A preliminary version of a tutorial can be found in
Clash.Tutorial, for a general overview of the library you
should however check out
Clash.Prelude. Some circuit examples
can be found in
Clash.Examples.
Not on Stackage, so not searched.
Hydrogen Prelude
Not on Stackage, so not searched.
A Prelude inspired by the Elm programming language
Not on Stackage, so not searched.
A custom prelude used in Morley
Reexports of most definitions from "mtl" and "transformers"
This package only exports definitions from the "mtl" and
"transformers" libraries. Unlike every module of "mtl" it does not
reexport
Control.Monad and
Control.Monad.Fix.
In combination with the
"base-prelude" library, this should
give you a quite rich prelude.
The
2.* versions are restricted by the feature set of
mtl-2.2 and
transformers-0.4, however they provide
support for newer versions of those libraries as well.
Not on Stackage, so not searched.
A numeric prelude
Not on Stackage, so not searched.
The Possehl Analytics Prelude