endbasic 0.11.1

The EndBASIC programming language - CLI
>>> argless functions with default return values
argless_default_default:  0
argless_boolean_default: FALSE
argless_double_default:  4
argless_integer_default:  4
argless_string_default: bar
>>> argless functions with explicit return values
argless_default_set:  5
argless_boolean_set: TRUE
argless_double_set:  9.2
argless_integer_set:  127
argless_string_set: foobar
>>> Call chains
first:  5
second: foo
>>> Local variables
defined_globally on exit:  2
defined_locally on exit:  3
 0
 1
>>> Global variables
get_really_global returned:  2
get_really_global returned:  4
really_global is:  3
>>> Arguments with annotations
param_b is TRUE
param_d is  3.4
param_i is  5
param_s is hello
 0
>>> Arguments with types
b is FALSE
d is -1
i is  2
s is foo
 0
>>> Type promotion in arguments
d is  5
i is  3
 0
>>> Type promotion in return values
 3
>>> Recursion
entering level:  3
entering level:  2
entering level:  1
 0
leaving level:  1
 0
leaving level:  2
 0
leaving level:  3
 0