reset a3, kut Charlie ;)
[tt2015.git] / a3 / code / Generics / GenZip.dcl
1 definition module GenZip
2
3 import StdMaybe, StdGeneric
4
5 generic gZip a b c :: .a .b -> .c
6 derive gZip Int, Bool, Char, Real, String, UNIT, EITHER, PAIR, CONS, FIELD, OBJECT
7 derive gZip [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,)
8
9 generic gMaybeZip a b c :: .a .b -> Maybe .c
10 derive gMaybeZip Int, Char, Bool, Real, String, UNIT, EITHER, PAIR, CONS, FIELD, OBJECT
11 derive gMaybeZip [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,)