-- Initial free-vector-spaces.cabal generated by cabal init. For further
-- documentation, see http://haskell.org/cabal/users-guide/
name: free-vector-spaces
version: 0.1.5.2
x-revision: 2
synopsis: Instantiate the classes from the vector-space package with types from linear
description: The <http://hackage.haskell.org/package/linear/ linear> package offers efficient
vector types — where vector means /element of a free vector space/, i.e.
fixed-length arrays of numbers. The entire interface of that library is based on
this concept of free vectors with a canonical coordinate representation.
.
While this is practically speaking often useful, it is also
.
* Questionable in terms of conceptual elegance. The idea of a vector has
originally not much to do with number-arrays; in physics a vector is just
a quantity with /magnitude and direction/. Only by fixing a basis can
a coordinate representation arise from that.
.
* Not as safe as we'd like. The typical linear-algebra languages like Matlab
or Fortran are notorious for hard-to spot mistakes that often arise from the
total reliance on coordinate representations (every vector/linear map is just
a matrix of number). @linear@ already avoids most of these problems because
it can at least check dimensions at compile-time and usually doesn't need
any indices, but some trouble still remains. E.g., two different 3-dimensional
spaces are indistinguishable by the type system (unless you wrap one of them
in a @newtype@, however that also needs to be parameterised on the coordinate
type to work with the rest of the library).
.
The <http://hackage.haskell.org/package/vector-space/ vector-space> library
has arguably a better (albeit less complete) interface. To gain access to
that interface with the more efficient types from @linear@, we here provide
the necessary orphan instances.
homepage: https://github.com/leftaroundabout/free-vector-spaces
license: BSD3
license-file: LICENSE
author: Justus Sagemüller
maintainer: (@) justussa $ kth.se
-- copyright:
category: Math
build-type: Simple
-- extra-source-files:
cabal-version: >=1.10
source-repository head
type: git
location: git://github.com/leftaroundabout/free-vector-spaces.git
library
exposed-modules: Data.VectorSpace.Free
, Data.VectorSpace.Free.FiniteSupportedSequence
, Data.VectorSpace.Free.Sequence
other-modules: Data.VectorSpace.Free.Class
, Data.VectorSpace.Free.TH
-- other-extensions:
build-depends: base >=4.6 && <5.1,
vector-space >=0.11 && <0.20,
MemoTrie,
linear >=1.18 && <1.24,
lens >= 4 && < 6,
vector,
pragmatic-show >=0.1.2 && <0.3,
template-haskell
ghc-options: -O2
-- hs-source-dirs:
default-language: Haskell2010
-- ghc-options: -cpp -pgmPcpphs -optP--cpps