let rec reduce_program ~env prog = let prog = list_map_ordered (reduce_gdecl ~env) prog in List.flatten prog