Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- newtype V (n :: Nat) (a :: Type) = V (Vector a)
- type family FunN (n :: Nat) (a :: Type) (b :: Type) :: Type where ...
- theLength :: forall n. KnownNat n => Int
- elim :: forall n a b. KnownNat n => V n a %1 -> FunN n a b %1 -> b
- make :: forall n a. KnownNat n => FunN n a (V n a)
- iterate :: forall n a. (KnownNat n, 1 <= n) => (a %1 -> (a, a)) -> a %1 -> V n a
- caseNat :: forall n. KnownNat n => Either (n :~: 0) ((1 <=? n) :~: 'True)
Documentation
elim :: forall n a b. KnownNat n => V n a %1 -> FunN n a b %1 -> b Source #
This is like pattern-matching on a n-tuple. It will eventually be polymorphic the same way as a case expression.