-- main.mcl --
import "fmt"
import "iter"

# function expression
$id1 = func($x str) { # definition site
	$x
}
$id2 = func($x str) {
	$x + $x
}

$generate = func($idn) {
	$idn("foo") # 1 call site, 2 calls
}

$foo = iter.map([$id1, $id2], $generate)

$name0 = $foo[0] || "fail"
$name1 = $foo[1] || "fail"
test "${name0}" {}
test "${name1}" {}
-- OUTPUT --
Vertex: test[foo]
Vertex: test[foofoo]
