Built with Alectryon, running Coq+SerAPI v8.16.0+0.16.3. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use instead of Ctrl.
Definition DEBUG : bool := false.

Tactic Notation "ltac_trace" string(x) :=
  let debug := eval compute in DEBUG in
    (match debug with
     | true => idtac x
     | false => idtac
     | _ => idtac "debug pattern match failed with ";
           idtac x;
           fail
     end).

Ltac print_goal :=
  match goal with
  | |- ?g =>
      let debug := eval compute in DEBUG in
        (match debug with
         | true => idtac g
         | _ => idtac
         end)
  end.