week 2 camil
[fp1415.git] / week2 / camil / TupleOverloading.dcl
1 definition module TupleOverloading
2
3 import StdEnv
4
5 instance + (a,b) | + a & + b
6 instance + (a,b,c) | + a & + b & + c
7
8
9 instance - (a,b) | - a & - b
10 instance - (a,b,c) | - a & - b & - c
11
12 instance * (a,b) | * a & * b
13 instance * (a,b,c) | * a & * b & * c
14
15 instance / (a,b) | / a & / b
16 instance / (a,b,c) | / a & / b & / c
17
18 instance zero (a,b) | zero a & zero b
19 instance zero (a,b,c) | zero a & zero b & zero c
20
21 instance one (a,b) | one a & one b
22 instance one (a,b,c) | one a & one b & one c
23
24 instance ~ (a,b) | ~ a & ~ b
25 instance ~ (a,b,c) | ~ a & ~ b & ~ c