HBAL Typechecker
Examples:
test_arith.hbal
test_call.hbal
test_jumps.hbal
test_list_paper.hbal
test_move.hbal
test_move_macro.hbal
test_parser.hbal
test_trees.hbal
sign main: { sp: [[code]+]+, r2:int+ } l1: { sp: [[code]+]+, r2:int+ } l2: { sp: [[code]+]+, r2:int+ } l3: { sp: [[code]+]+, r2:int+ } l4: { sp: [[code]+]+, r2:int+ } <> main: arithi r2 <- r0 + 10; l1: arithi r2 <- r2 - 1; bez r2 l2; l2: bnz r2 l3; jmp l4; l3: ret main; l4: ret main; <>