Safe Haskell | None |
---|---|
Language | Haskell2010 |
A 2-dimensional point.
Documentation
A 2-dim point of a's, implemented as a tuple, but api represented as Point a a.
>>>
fmap (+1) (Point 1 2)
Point 2 3>>>
pure one :: Point Int
Point 1 1>>>
(*) <$> Point 1 2 <*> pure 2
Point 2 4>>>
foldr (++) [] (Point [1,2] [3])
[1,2,3]>>>
Point "a" "pair" `mappend` pure " " `mappend` Point "string" "mappended"
Point "a string" "pair mappended"
As a Ring and Field class
>>>
Point 0 1 + zero
Point 0 1>>>
Point 0 1 + Point 2 3
Point 2 4>>>
Point 1 1 - one
Point 0 0>>>
Point 0 1 * one
Point 0 1>>>
Point 0.0 1.0 / one
Point 0.0 1.0>>>
Point 11 12 `mod` (pure 6)
Point 5 0
Point' (a, a) |