Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Reserved Notation bug?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Reserved Notation bug?


Chronological Thread 
  • From: Jason Gross <jasongross9 AT gmail.com>
  • To: coq-club <coq-club AT inria.fr>
  • Subject: [Coq-Club] Reserved Notation bug?
  • Date: Thu, 16 Aug 2012 18:16:40 -0400

Can someone explain to me what is happening in the following code (in particular, in the last line)?  Is this a bug?


Parameter foo : Type -> Type -> Type -> Type.
Parameter bar : Type -> Type -> Type.

(* Notation "C ~ D" := (bar C D). (* Error: A left-recursive notation must have an explicit level. *) *)
(* Notation "C .^{ M } D" := (foo C M D). (* Error: A left-recursive notation must have an explicit level. *) *)

Reserved Notation "C .^{ M } D" (at level 70, no associativity).
Reserved Notation "C ~ D" (at level 70, no associativity).

Notation "C ~ D" := (bar C D). (* works fine *)
(* Notation "C .^{ M } D" := (foo C M D) (at level 70, no associativity). (* would work fine *) *)
Notation "C .^{ M } D" := (foo C M D). (* Error: A left-recursive notation must have an explicit level. *)



Thanks.

-Jason



Archive powered by MHonArc 2.6.18.

Top of Page