view tests/efold.ur @ 1507:ca8c8b8cc477

Tutorial: TLC meets type classes and modules
author Adam Chlipala <adam@chlipala.net>
date Sun, 17 Jul 2011 13:04:07 -0400
parents 71bafe66dbe1
children
line wrap: on
line source
val currier : rs :: {Type} -> Cfold.currier rs =
        fold [Cfold.currier] (fn nm :: Name => fn t :: Type => fn rest :: {Type} => fn acc => fn x : t => acc) {}

val greenCurry : Cfold.greenCurry = currier [Cfold.greenCurryIngredients]
val redCurry : Cfold.redCurry = currier [Cfold.redCurryIngredients]
val yellowCurry : Cfold.yellowCurry = currier [Cfold.yellowCurryIngredients]

val main = yellowCurry