let pp_block fmt tab op pp ps = match ps with | [] -> () | p::ps -> fprintf fmt "%s %a" tab pp p ; List.iter (fun p -> fprintf fmt "@\n%s %a" op pp p) ps