This ports TestAstFunc2 from our home-grown content storage system to the txtar package. Since a single file can be used to represent the entire folder hierarchy, this makes it much easier to see and edit tests.
22 lines
507 B
Plaintext
22 lines
507 B
Plaintext
-- main.mcl --
|
|
import "fmt"
|
|
|
|
# TODO: should this be allowed? it means the func value has two different types!
|
|
# this should be a polymorphic function as a value, iow a lambda
|
|
$add = func($x) {
|
|
$x + $x
|
|
}
|
|
|
|
$num = 2
|
|
$out1 = $add($num) # 4
|
|
|
|
test fmt.printf("%d + %d is %d", $num, $num, $out1) {} # simple math
|
|
|
|
$val = "hello"
|
|
$out2 = $add($val) # hellohello
|
|
|
|
test fmt.printf("%s + %s is %s", $val, $val, $out2) {} # simple concat
|
|
-- OUTPUT --
|
|
Vertex: test[2 + 2 is 4]
|
|
Vertex: test[hello + hello is hellohello]
|