dimensions-0.1.0.0: src/Numeric/Dimensions.hs
-----------------------------------------------------------------------------
-- |
-- Module : Numeric.Dimensions
-- Copyright : (c) Artem Chirkin
-- License : BSD3
--
-- Maintainer : chirkin@arch.ethz.ch
--
-- Provides a set of data types to define and traverse through multiple dimensions.
-- The core types are `Dim ds` and `Idx ds`, which fix dimension sizes at compile time.
--
-- Lower indices go first, i.e. assumed enumeration
-- is i = i1 + i2*n1 + i3*n1*n2 + ... + ik*n1*n2*...*n(k-1).
-- This is also to encourage column-first matrix enumeration and array layout.
--
-----------------------------------------------------------------------------
module Numeric.Dimensions
( module Numeric.Dimensions.List
, module Numeric.Dimensions.Dim
, module Numeric.Dimensions.Idx
, Evidence (..), withEvidence, sumEvs, (+!+)
) where
import Numeric.Dimensions.List
import Numeric.Dimensions.Dim
import Numeric.Dimensions.Idx
import Numeric.TypeLits