私はScalaの型レベルプログラミングを深めたいと思っていましたが、私は小さなエクササイズを始めました。私はタイプレベルでのPeano数の実装から始めました。以下はこのコードです! sealed trait PeanoNumType { // Type at the end indicates to the reader that we are dealing with types
ty
私はHaskell型レベルプログラミングについて学びます。私はタイプレベルのリストで、キー、シンボルをルックアップするために少し機能を書いた: {-# LANGUAGE DataKinds #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
import G
は、私は一種[*]の、種類のリストがあるとします。 let Ts = '[Int, Bool, Char]
私はタプルのチェーンにこれを変換したい: type family Tupled (ts :: [*]) z :: *
type instance Tupled (t ': ts) z = (t, Tupled ts z)
type instance Tupled '[] z = z