Comments (3)
Another alternative could be to always use & as the terminator I guess. It would still look more consistent to me.
from math-comp.
The design is that &
is the default terminal separator, but other separators can be used when appropriate, so that the notation "reads" better, e.g., [\/ A, B | C]
as "A, B or C".
It is important that the terminal separator be symbol that is a separator in the Coq grammar, i.e., that it cannot be construed as an infix operator. Nominally, all sequence items are parsed at level 200 (least binding), so false : l
should be parsed as a type cast in your example. So either it is, and you've been saved by some odd error recovery of the stream parser, or you're overriding the cast syntax in manifest sequences, and something like [:: a && b : nat; true]
will no longer parse.
from math-comp.
I agree on the aesthetic point, and you gave me a way to explain all this.
from math-comp.
Related Issues (20)
- Investigate slowness of mathcomp's vs. coq's GitLab CI builds
- vm_compute getting very slow HOT 14
- Please pick the version you prefer for Coq 8.18 in Coq Platform 2023.10 HOT 13
- Naive parametric instance problem HOT 5
- Performance problem with multiple rewrite in mathcomp2 HOT 1
- does `leq_subr` follow the naming convention?
- rpred expose the iinternal of Num.real HOT 5
- Disable warning about redundant projection
- Semi-modules and semi-algebras HOT 3
- Incoherence of the implicit status of lemmas HOT 6
- Refactor qpoly and poly HOT 2
- Detailed installation instructions with make HOT 2
- `fun_scope` and `function_scope` HOT 5
- `Bind Scope` declarations for structure record types
- Remove 1.16.0 deprecations HOT 1
- Check MC1 backports HOT 2
- Avoid exporting warning settings
- Require Import order issue with associativity settings HOT 1
- Building with COQ 8.19 results in `Error: A left-recursive notation must have an explicit level.` in `fingroup/presentation.v` HOT 4
- Mono in partial order morphisms HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from math-comp.