== f == fun f(a : Boolean) : Unit { 1 a 2.toLong() foo(a, 3) genfun() flfun {1} 3.equals(4) 3 equals 4 1 + 2 a && true a || false } --------------------- 1 NEW() a NEW() 2 NEW() toLong NEW() toLong() COPY 2.toLong() COPY foo NEW(, ) a NEW() 3 NEW() foo(a, 3) COPY genfun NEW() genfun() COPY flfun NEW() {1} NEW() flfun {1} COPY 3 NEW() equals NEW(, ) 4 NEW() equals(4) COPY 3.equals(4) COPY 3 NEW() equals NEW(, ) 4 NEW() 3 equals 4 COPY 1 NEW() + NEW(, ) 2 NEW() 1 + 2 COPY a NEW() true NEW() a && true NEW(, ) a NEW() false NEW() a || false NEW(, ) { 1 a 2.toLong() foo(a, 3) genfun() flfun {1} 3.equals(4) 3 equals 4 1 + 2 a && true a || false } COPY ===================== == anonymous_0 == {1} --------------------- 1 NEW() 1 COPY ===================== == foo == fun foo(a : Boolean, b : Int) : Unit {} --------------------- ===================== == genfun == fun genfun() : Unit {} --------------------- ===================== == flfun == fun flfun(f : () -> Any) : Unit {} --------------------- =====================