相关疑难解决方法(0)

如何将归纳推理应用于`GHC.TypeLits.Nat`?

考虑zip由Peano数字索引的通常矢量长度的这个定义:

{-# language DataKinds          #-}
{-# language KindSignatures     #-}
{-# language GADTs              #-}
{-# language TypeOperators      #-}
{-# language StandaloneDeriving #-}
{-# language FlexibleInstances  #-}
{-# language FlexibleContexts   #-}

module Vector
  where

import Prelude hiding (zip)

data N
  where
    Z :: N
    S :: N -> N

data Vector (n :: N) a
  where
    VZ :: Vector Z a
    (:::) :: a -> Vector n a -> Vector (S n) a

infixr 1 :::

deriving instance Show a …
Run Code Online (Sandbox Code Playgroud)

haskell type-families induction

5
推荐指数
1
解决办法
157
查看次数

标签 统计

haskell ×1

induction ×1

type-families ×1