let list l = fun ~var_count -> Tree.node "List.make" (List.mapi ~f:(fun i a -> Tree.arrow (sprintf "L%d" i) (a ~var_count)) l)