--- /dev/null
+definition module GenZip\r
+\r
+import StdMaybe, StdGeneric\r
+\r
+generic gZip a b c :: .a .b -> .c\r
+derive gZip Int, Bool, Char, Real, String, UNIT, EITHER, PAIR, CONS, FIELD, OBJECT\r
+derive gZip [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,)\r
+\r
+generic gMaybeZip a b c :: .a .b -> Maybe .c\r
+derive gMaybeZip Int, Char, Bool, Real, String, UNIT, EITHER, PAIR, CONS, FIELD, OBJECT\r
+derive gMaybeZip [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,)\r