Bend/examples/gen_tree.bend
Nicolas Abril 45839a7efd
#615 Add an optional type system to Bend (#631)
Co-authored-by: imaqtkatt <eduarda.so@proton.me>
2024-09-20 16:23:22 +02:00

18 lines
406 B
Plaintext

# Generates a tree with numbers in the nodes using 'bend'
type MyTree(t):
Node { val: t, ~left: MyTree(t), ~right: MyTree(t) }
Leaf
def tree_gen(n: u24, x: u24) -> MyTree(u24):
bend n, x:
when n != 0:
return MyTree/Node(x, fork(n - 1, x*2+1), fork(n - 1, x*2+2))
else:
return MyTree/Leaf
def main -> MyTree(u24):
depth = 4
first_val = 1
return tree_gen(depth, first_val)