1    private@
2    
3    do
4        let v1 = num/Vector3<i32> 1 2 3
5        let v2 = num/Vector3<i32> 1 2 4
6        assert v1 <> v2
7    
8        let x = X 7
9        let v3 = v1 + x
10       assert v3.x == 8
11   
12   type X<T> value
13       let (+) rhs = value + rhs.value |> X
14   
15   do
16       let x = X 5 + X 3
17       assert x == X 8
18   
19   type X<u32> value
20       let display () = "value is $value"
21   
22   do
23       let x = X<u32> 9
24       assert x.display == "value is 9"
25