Files
corelang/lambdas.kl
2022-06-02 22:17:28 +02:00

51 lines
955 B
Plaintext

a_type :: Int
poInter_type :: *Int
// null_poInter: poInter_type = null
if_stmt :: (cond: Int): type
CONSTANT :: 10
thing := 10
if i := thing + cond, cond + CONSTANT
return i + CONSTANT
else if cond - CONSTANT
return i - CONSTANT
else
return CONSTANT
for_stmt :: ()
for i := 0, i + 10, i+=1
pass
add_10 :: (size: Int): Int
add_20 :: (new_size: Int): Int
return 20
add :: (a: Int, b: Int = 10): Int
return a + b
constant :: 20; result := constant + 10
v3 := add(1,2)
v2 := add(a = 1, b = 2)
v1 := add(a = 1)
// v_err := add([0] = 1)
v4 := add(b = 1, a = 2)
// v_err := add([0] = 1, [1] = 2)
// v_err := add([0] = 1, 10) // illegal
// v_err := add([1] = 1) // illegal
// v_err := add() // illegal
return v4
return_constant :: (): Int
constant :: 10
return constant
returning_Void :: (insert: Int)
val1: Int = return_constant()
val2: Int = add_10(val1)
return
type :: a_type