let pretty_print ppelt f r = fprintf f "@[<hv2>rule@ %S@ ~deps:%a@ ~prods:%a@ <fun>@]" r.name print_resource_list r.deps (List.print ppelt) r.prods