annotate tests/cfold.ur @ 1298:e665527fce1c
Support empty datatypes, which can now be generated via 'variant []'
author |
Adam Chlipala <adam@chlipala.net> |
date |
Thu, 09 Sep 2010 12:42:25 -0400 |
parents |
71bafe66dbe1 |
children |
|
rev |
line source |
adamc@67
|
1 con currier = fold (fn nm => fn t => fn acc => t -> acc) {}
|
adamc@67
|
2
|
adamc@71
|
3 con greenCurryIngredients :: {Type} = []
|
adamc@71
|
4 con greenCurry = currier greenCurryIngredients
|
adamc@67
|
5 val greenCurry : greenCurry = {}
|
adamc@67
|
6
|
adamc@71
|
7 con redCurryIngredients = [A = int, B = string]
|
adamc@71
|
8 con redCurry = currier redCurryIngredients
|
adamc@67
|
9 val redCurry : redCurry = fn x : int => fn y : string => {}
|
adamc@67
|
10
|
adamc@71
|
11 con yellowCurryIngredients = [A = string, B = int, C = float]
|
adamc@71
|
12 con yellowCurry = currier yellowCurryIngredients
|
adamc@67
|
13 val yellowCurry : yellowCurry = fn x => fn y => fn z => {}
|
adamc@70
|
14
|
adamc@70
|
15 val main = yellowCurry
|