BSD-3-Clause licensed by Edward A. Kmett
This version can be pinned in stack with:linear-1.16.2@sha256:02e6c7079f3c79316aa7653a19f3fd04cbc6ef46eedfa6706319eab81bde677e,2805
Module documentation for 1.16.2
Depends on 18 packages
(full list with versions):
adjunctions,
base,
binary,
containers,
deepseq,
distributive,
ghc-prim,
hashable,
lens,
reflection,
semigroupoids,
semigroups,
tagged,
template-haskell,
transformers,
unordered-containers,
vector,
void linear
Highly polymorphic vector space operations on sparse and free vector spaces.
Contact Information
Contributions and bug reports are welcome!
Please feel free to contact me through github or on the #haskell IRC channel on irc.freenode.net.
-Edward Kmett
1.16.2
- Added
NFData
instances for the various vector types.
- Added
!!/
operator for matrix division by scalar.
1.16.1
- Added
Trace
instance for V1
.
1.16
- Renamed
kronecker
to scaled
.
1.15.5
- Added
Metric
instances for []
, ZipList
, Maybe
- Added
det44
and inv44
to Linear.Matrix
- Added
Data
instance for Point
1.15.4
- Added Typeable and Data instances for V
1.15.3
- Added missing
FunctorWithIndex
, FoldableWithIndex
and TraversableWithIndex Int (V n)
instances for V
1.15.2
- Added
frustum
, analogous to the old glFrustum
call.
- Added
inverseInfinitePerspective
, inverseOrtho
, inverseFrustum
.
1.15.1
- Added
inversePerspective
. It is much more accurate to compute it directly than to compute an inverse.
1.15.0.1
- Fixed build failures caused by
Linear
re-exporting the old name.
1.15
- Renamed
Linear.Perspective
to Linear.Projection
.
- Fixed a build issue with GHC HEAD.
1.14.0.1
- Fixed test failures caused by 1.14
1.14
- Moved
Coincides
to Linear.Plucker.Coincides
. The constructors Line
and Ray
oft collided with user code.
1.13
- Switched ‘ortho’ to follow the OpenGL handedness.
1.12.1
- Added “swizzle” lenses e.g.
_yzx
, which are useful for working with libraries like gl
.
1.12
- Added ‘transpose’
- Added missing ‘Mxy’ matrices up to 4 dimensions – they were commonly reimplemented by users.
1.11.3
- Fixed an issue with
UndecidableInstances
on GHC 7.6.3
1.11.2
- Added
Linear.Perspective
.
1.11.1
- Added
_Point
, relative
and a few instances for Point
.
1.11
- Changed the ‘representation’ of
V n
from E (V n)
, which was hard to use, to Int
, which is a bit too permissive, but is easy to use.
1.10.1
1.10
- Added
Hashable
instances.
1.9.1
- Added a role annotation to
V n a
to prevent users from using GHC 7.8’s Coercible
machinery to violate invariants.
1.9.0.1
1.9
- Added
MonadZip
instances.
- Added
MonadFix
instances.
- Added
Control.Lens.Each.Each
instances
1.8.1
1.8
- Added missing
Unbox
instances for working with unboxed vectors of linear
data types.
1.7
- Fixed
axisAngle
unit
now has a rank 1 type.
1.5
1.4
- Renamed
incore
to column
and added an example.
1.3.1.1
1.3.1
- Better implementations of
basis
and basisFor
.
- Derived Generic instances.
1.2
- Improved matrix multiplication to properly support the sparse/sparse case.
1.1.4
- Marked modules
Trustworthy
as necessary.
1.1.2
- Dependency bump for
reflection
compatibility
1.1.1
- Fixed an infinite loop in the default definition of
liftI2
.
1.1
- Added
Additive
instances for []
, Maybe
and Vector
.
1.0
- Strict vectors
- Exported
mkTransformationMat
- Bumped dependency bounds
0.9.1 [bug fix]
0.9
- Added sparse vector support.
0.8
0.7
- Added
Linear.Instances
- More documentation
0.6
- Removed the direct dependency on
lens
.
- Added
Linear.Core
to cover vector spaces as corepresentable functors.
0.5
- Added
Ix
instances for V2
, V3
, and V4
0.4.2.2
- Removed the upper bound on
distributive
0.2