-- | -- Module : Tile.Shape -- Description : Rank-space dimensions. -- -- A shape gives the extent of each logical dimension in a rank space. module Tile.Shape ( -- * Shapes Shape, size, ) where -- | Extents of a logical rank space. type Shape = [Int] -- | Total number of points in a shape. size :: Shape -> Int size :: Shape -> Int size = Shape -> Int forall a. Num a => [a] -> a forall (t :: * -> *) a. (Foldable t, Num a) => t a -> a product