initial
[prop.git] / tools / demos / poly2.pcc
blob27e0367204060da9fa44b8dcc6de70e781780952
1 //
2 // This demonstrates the use of polymorphic datatypes parametrized
3 // by more than one type parameters
4 //
6 datatype Tree<a,b> = empty
7                    | leaf(a)
8                    | node(Tree<a,b>, b, Tree<a,b>)
9                    ;
11 instantiate datatype Tree<int,const char *>, Tree<int,int>;
13 typedef Tree<int,const char *> MyTree;
15 MyTree t = node(leaf(1), "abcde", empty);