-- main.mcl --
import "datetime"
import "fmt"

$lambda1 = func($x) {
	$x + "!"
}
$lambda2 = func($x) {
	$x + "?"
}

$lambda = if 10 > 0 { # must be a const, otherwise this is a dynamic graph
	$lambda1
} else {
	$lambda2
}

$s = fmt.printf("%d", datetime.now())

test [$lambda($s),] {}
-- OUTPUT --
Edge: FuncValue -> call # fn
Edge: _operator -> composite: []str # 0
Edge: call -> callSubgraphOutput # dummy
Edge: callSubgraphOutput -> printf: func(format str, a int) str # a
Edge: const: str("!") -> _operator # b
Edge: const: str("%d") -> printf: func(format str, a int) str # format
Edge: const: str("+") -> _operator # op
Edge: printf: func(format str, a int) str -> _operator # a
Vertex: FuncValue
Vertex: _operator
Vertex: call
Vertex: callSubgraphOutput
Vertex: composite: []str
Vertex: const: str("!")
Vertex: const: str("%d")
Vertex: const: str("+")
Vertex: printf: func(format str, a int) str
