-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathyap.cabal
More file actions
58 lines (56 loc) · 2.35 KB
/
Copy pathyap.cabal
File metadata and controls
58 lines (56 loc) · 2.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
Name: yap
Version: 0.3.0
Build-Type: Simple
Cabal-Version: 1.18
License: BSD3
License-File: LICENSE
Author: Ross Paterson <R.Paterson@city.ac.uk>
Maintainer: Ross Paterson <R.Paterson@city.ac.uk>
Category: Algebra, Prelude
Synopsis: yet another prelude - a simplistic refactoring with algebraic
classes
Description: A simple refactoring of the Prelude numeric classes,
aiming to escape from the restrictive bundling of
operations in the standard numeric classes, while
preserving backward compatibility for clients.
This is done by adding algebraic classes as superclasses
of the Haskell 2010 numeric classes, yielding the
following class hierarchy (grey classes are unchanged):
.
<<https://raw.githubusercontent.com/RossPaterson/yap/refs/heads/main/images/hierarchy.svg>>
.
"Prelude.YAP" is an almost-compatible replacement
for the standard Haskell Prelude, as long as you're
not defining instances of the numeric classes (though
defaulting will be affected). When importing it, use
.
@{-# LANGUAGE RebindableSyntax #-}@
.
This will turn off the implicit @Prelude@ import and
attach various syntax to the new definitions.
.
"Data.YAP.Algebra" contains just the new classes;
you'll need to import it if you want access to the
new names, including to define instances.
.
Other modules contain instances for the existing types
@Complex@ and @Ratio@.
Further examples are in the @yap-examples@ package.
Extra-Doc-Files:
changelog
images/hierarchy.svg
Source-Repository head
Type: git
Location: https://github.com/RossPaterson/yap
Library
Default-Language: Haskell2010
Build-Depends:
base >= 4.18 && < 5
Exposed-Modules:
Data.YAP.Algebra
Data.YAP.Complex
Data.YAP.MonoidAdaptors
Data.YAP.Ratio
Prelude.YAP
Other-Modules:
Data.YAP.Algebra.Internal