let rec compile_transitions transitions state_name env =
match transitions with
cur::rest ->
let cur_result, cur_env, targ_ids = compile_transition cur state_name env in
let rest_result, rest_env, id_list = compile_transitions rest state_name cur_env in
cur_result @ rest_result, rest_env, targ_ids @ id_list
| [] -> [], env, []