val outOfScope = 10; val fun = (a as int, b as int) as int => a + b * outOfScope; println(fun(30, 20)); function apply_fn2(fn as function(value as int, othervalue as int) as int, value as int) as int { return fn(value, value); } //function scale(value as int, scale as int) as int { // val fun as function(value as int, othervalue as int) as int = ((v as int) as int => v * scale); // return apply(fun, scale); //} apply_fn2(fun, 10); //println("Value: " + scale(10, 5));