let type a = {a : int} var a := 0 function a(a : a) : a = a{a = a.a} in a(a{a = a}) end