Coq Call 2023 09 05
Hugo Herbelin edited this page Sep 6, 2023
·
6 revisions
- September 5th 4pm UTC+2 (Paris time zone offset)
- https://rdv2.rendez-vous.renater.fr/coq-call
Looking for feedback about a few experiments made during summer (Hugo):
- CEP #72 and PR #17888 on discharging on the fly
- support for extruding uniform parameters (the standard failure with
map
not in a section, PR #17986) and for dynamically recomputed recursive structure in guard condition (the standard asymmetry between recursing ontree
or onlist tree
, PR #17950) - an analysis of the treatment of associativity in gramlib (CEP #71)
- a short proposal, CEP #73, to resolve the conflict between expanding (for typing) or not (for guard checking) aliases in pattern-matching
- a refinement of the criterion propagating the size through a
match
with applicability to small inversion and definitional UIP, PR #14359
Participants: Gaëtan, Guillaume, Hugo, Matthieu, Pierre, Pierre-Marie
Only gramlib point discussed
- agreement on the fact that we should get rid of the recovery mechanism
- would break things like
_ /\ forall _
-> moving forall at level 10 seem a reasonable solution - other issue with unary minus: have to experiment
- would break things like
- PM: while at it, should get rid of the numbered level and use strings
- more modular
- then no more total order, we could let user add constraints (and rebuild the grammar each time) like we do for universes, asking for a lattice?, what to do when no order specified, do something arbitrary like is already the case?
- PM: no need for any change in (our fork of) camlp5
- Guillaume: somehow, unary minus should have its argument at the level where the preceding operator is, that is, in
a + - b
,a * - b
,a ^ - b
,b
should be respectively parsed at the level of+
,*
, and^
- further discussion on minus with only Guillaume, Hugo and Pierre
- move forall at level 10 (has to be below
/\
at level 80 but also fun/let) - while at it move unary minus from level 35 to level 48 (would fix
- a * b
being parsed(- a) * b
instead of- (a * b)
), orthogonal, will likely break things but backward compatible fix by adding parentheses - test removing recovery mechanism on stdlib (Hugo) and mathcomp (Pierre)
- if it helps we can add hack notations like
_ ^ - _
- move forall at level 10 (has to be below
To the extent possible under law, the contributors of “Cocorico!, the Coq wiki” have waived all copyright and related or neighboring rights to their contributions.
By contributing to Cocorico!, the Coq wiki, you agree that you hold the copyright and you agree to license your contribution under the CC0 license or you agree that you have permission to distribute your contribution under the CC0 license.