Awesome
Accelerate TypeLits
Synopsis
This library provides a high level interface to accelerate
for matrix
computations.
Installation
The simplest way to install this library is using cabal
or cabal-sandbox
> cabal install accelerate-typelits
If you want to have the most recent version, the project is on github so you can checkout the project.
> git clone https://github.com/epsilonhalbe/accelerate-typelits.git
> cd accelerate-typelits
> cabal install
> git clone https://github.com/epsilonhalbe/accelerate-typelits.git
> cd accelerate-typelits
> cabal sandbox init
> cabal install
There is also a stack.yaml
file included, so one can also use stack in
order to compile this library.
> git clone https://github.com/epsilonhalbe/accelerate-typelits.git
> cd accelerate-typelits
> stack --stack-yaml stack-7.10.yaml build
The operators have been designed to give a visual hint of the respective parameters.
#
for matrices^
for vectors.
for scalars
So for example #*^
represents the multiplication of a matrix with a vector,
analogously ^*#
works the other way around. Other examples would be #*#
for
matrix-matrix multiplication and .*^
scalar multiplication of a vector.
Operator precedence is usually the same as the numeric equivalence.
Credits
The matrix-vector and matrix-matrix products have been inspired by Henning
Thielemann's accelerate-arithmetic
library