-- main.mcl -- import "fmt" # we should only see one copy of $s1, $s2 and $fn $s1 = "hello" $fn = func() { $s1 + " " + $s2 } $s2 = "world" test "greeting1" { anotherstr => $fn(), } test "greeting2" { anotherstr => $fn(), } test "greeting3" { anotherstr => $fn(), } -- OUTPUT -- Edge: FuncValue -> call # fn Edge: FuncValue -> call # fn Edge: FuncValue -> call # fn Vertex: FuncValue Vertex: FuncValue Vertex: FuncValue Vertex: call Vertex: call Vertex: call Vertex: const Vertex: const Vertex: const