aboutsummaryrefslogtreecommitdiffhomepage
path: root/kernel
Commit message (Collapse)AuthorAge
* Remove (useless) aliases from the API.Gravatar Matej Košík2017-06-10
|
* Put all plugins behind an "API".Gravatar Matej Kosik2017-06-07
|
* Merge PR#728: A few typos.Gravatar Maxime Dénès2017-06-06
|\
| * A few typos.Gravatar Hugo Herbelin2017-06-04
| |
* | Drop '.' from CErrors.anomaly, insert it in argsGravatar Jason Gross2017-06-02
|/ | | | | | | | | | | | | | | | | As per https://github.com/coq/coq/pull/716#issuecomment-305140839 Partially using ```bash git grep --name-only 'anomaly\s*\(~label:"[^"]*"\s*\)\?\(Pp.\)\?(\(\(Pp.\)\?str\)\?\s*".*[^\.!]")' | xargs sed s'/\(anomaly\s*\(~label:"[^"]*"\s*\)\?\(Pp.\)\?(\(\(Pp.\)\?str\)\?\s*".*\s*[^\.! ]\)\s*")/\1.")/g' -i ``` and ```bash git grep --name-only ' !"' | xargs sed s'/ !"/!"/g' -i ``` The rest were manually edited by looking at the results of ```bash git grep anomaly | grep '\.ml' | grep -v 'anomaly\s*\(~label:"[^"]*"\s*\)\?\(Pp\.\)\?(\(\(Pp.\)\?str\)\?\s*".*\(\.\|!\)")' | grep 'anomaly\($\|[^_]\)' | less ```
* Creating a module Nameops.Name extending module Names.Name.Gravatar Hugo Herbelin2017-05-31
| | | | | | | | | | | | This module collects the functions of Nameops which are about Name.t and somehow standardize or improve their name, resulting in particular from discussions in working group. Note the use of a dedicated exception rather than a failwith for Nameops.Name.out. Drawback of the approach: one needs to open Nameops, or to use long prefix Nameops.Name.
* Merge PR#555: Missing optimization when Kernel Term Sharing is disabled.Gravatar Maxime Dénès2017-05-29
|\
* | [cleanup] Unify all calls to the error function.Gravatar Emilio Jesus Gallego Arias2017-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | This is the continuation of #244, we now deprecate `CErrors.error`, the single entry point in Coq is `user_err`. The rationale is to allow for easier grepping, and to ease a future cleanup of error messages. In particular, we would like to systematically classify all error messages raised by Coq and be sure they are properly documented. We restore the two functions removed in #244 to improve compatibility, but mark them deprecated.
* | Merge PR#646: Revised behavior on ill-formed identifiersGravatar Maxime Dénès2017-05-23
|\ \
* \ \ Merge PR#518: Faster universe unificationGravatar Maxime Dénès2017-05-23
|\ \ \
| | * | Revised behavior on ill-formed identifiers.Gravatar Hugo Herbelin2017-05-20
| |/ / |/| | | | | | | | | | | Namely: Replacing (currently deactivated) warning on illegal ident by an error in strict mode and nothing in soft mode.
* | | Merge PR#572: Replacing costly merges in UGraph.Gravatar Maxime Dénès2017-05-11
|\ \ \
* \ \ \ Merge PR#602: Fix more warningsGravatar Maxime Dénès2017-05-03
|\ \ \ \
* \ \ \ \ Merge PR#411: Mention template polymorphism in the documentation.Gravatar Maxime Dénès2017-05-03
|\ \ \ \ \
| | * | | | Remove dead code in native compiler.Gravatar Maxime Dénès2017-05-02
| |/ / / / |/| | | |
* | | | | Merge PR#582: Fix warningsGravatar Maxime Dénès2017-05-02
|\ \ \ \ \
* | | | | | More consistent writing of de Bruijn.Gravatar Théo Zimmermann2017-05-01
| | | | | |
* | | | | | Fix for bug 5507. Mispelt de Bruijn.Gravatar Théo Zimmermann2017-05-01
| | | | | |
* | | | | | Merge PR#531: Fixing bug #5420 and many similar bugs due to the presence of ↵Gravatar Maxime Dénès2017-04-28
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | let-ins
| | * | | | | Fix 4.04 warningsGravatar Gaetan Gilbert2017-04-27
| | | | | | |
| | * | | | | Remove some unused values and typesGravatar Gaetan Gilbert2017-04-27
| | | | | | |
| | * | | | | Fix omitted labels in function callsGravatar Gaetan Gilbert2017-04-27
| | | | | | |
| | * | | | | Locally disable some warnings.Gravatar Gaetan Gilbert2017-04-27
| |/ / / / / |/| | | | |
| | | | * | Fast path when checking equality of universe levels in UState.Gravatar Pierre-Marie Pédrot2017-04-27
| |_|_|/ / |/| | | | | | | | | | | | | | | | | | | We export the relevant level equality function in UGraph which is way faster than checking that each one is smaller than the other as universes.
* | | | | COMMENT: Pre_env.envGravatar Matej Kosik2017-04-20
| | | | |
* | | | | correcting a typo in a commentGravatar Matej Kosik2017-04-20
| | | | |
* | | | | correcting comments in the "Context" moduleGravatar Matej Kosik2017-04-20
| | | | |
* | | | | simplifying "Environ.push_named" functionGravatar Matej Kosik2017-04-20
| | | | |
* | | | | refactoring "Names.DirPath.is_empty" functionGravatar Matej Kosik2017-04-20
| | | | |
* | | | | refactoring "Names.DirPath.compare" functionGravatar Matej Kosik2017-04-20
| | | | |
* | | | | refactoring "Names.DirPath.equal" functionGravatar Matej Kosik2017-04-20
| | | | |
| | | * | Replacing costly merges in UGraph.Gravatar Pierre-Marie Pédrot2017-04-18
| |_|/ / |/| | |
* | | | Merge branch 'v8.6' into trunkGravatar Maxime Dénès2017-04-15
|\ \ \ \
* \ \ \ \ Merge PR#441: Port Toplevel to the Stm APIGravatar Maxime Dénès2017-04-12
|\ \ \ \ \
| * | | | | [stm] Remove edit_id.Gravatar Emilio Jesus Gallego Arias2017-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We remove `edit_id` from the STM. In PIDE they serve a different purpose, however in Coq they were of limited utility and required many special cases all around the code. Indeed, parsing is not an asynchronous operation in Coq, thus having feedback about parsing didn't make much sense. All clients indeed ignore such feedback and handle parsing in a synchronous way. XML protocol clients are unaffected, they rely on the instead on the Fail value. This commit supersedes PR#203.
| | | | | * Missing optimization when Kernel Term Sharing is disabled.Gravatar Pierre-Marie Pédrot2017-04-12
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | We don't have to perfom in-place updates because we actually know that there is none on the stack. This should speed up UniMath.
* | | | | Merge PR#549: Fast path in weak head reduction of applied atoms.Gravatar Maxime Dénès2017-04-11
|\ \ \ \ \
| | | | | * Update various comments to use "template polymorphism"Gravatar Gaetan Gilbert2017-04-11
| |_|_|_|/ |/| | | | | | | | | | | | | | Also remove obvious comments.
* | | | | Merge PR#537: Efficient side-effect abstractionGravatar Maxime Dénès2017-04-11
|\ \ \ \ \
| | | | | * Documenting how the recursive indices of a fixpoint are computed.Gravatar Hugo Herbelin2017-04-09
| | | | |/ | | | |/| | | | | | | | | | | Also documenting how the implicit arguments by position are computed.
| | * / | Fast path in weak head reduction of applied atoms.Gravatar Pierre-Marie Pédrot2017-04-08
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of calling the whole reduction machirery, we check before reducing that a term is an applied atom, i.e. inductive, constructor, evar or meta. In that case, the abstract machine acts as the identity but needs to destruct and reconstruct the whole term, which can be very costly. This fixes part of bug #5421: vm_compute is very slow at doing nothing, where recomputation of the type of a big inductive was incredibly expensive.
* | | | Merge branch 'master' into econstrGravatar Pierre-Marie Pédrot2017-04-07
|\ \ \ \ | | |/ / | |/| |
| * | | Merge PR#519: Faster side effectsGravatar Maxime Dénès2017-04-07
| |\ \ \
| | * | | Inline the only use of hcons_j in Term_typing.Gravatar Pierre-Marie Pédrot2017-04-07
| | | | |
| | * | | Documenting the fact terms are only hashconsed outside of a section.Gravatar Pierre-Marie Pédrot2017-04-06
| | | | |
| * | | | Merge PR#434: Optimizing array mapping in the kernel.Gravatar Maxime Dénès2017-04-05
| |\ \ \ \
| | | | * | Fix substitution of abstracted lemmas.Gravatar Pierre-Marie Pédrot2017-04-04
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of browsing the term as many times as there are abstracted constants, we replace the constants in one pass. We have to be a bit careful to replace the right variables though, in case there are chained abstracts. This is much faster. This solves the second part of bug #5382: Huge case analysis fails in coq8.5.x.
| | | | * Fix bug #5435: [Eval native_compute in] raises anomaly.Gravatar Maxime Dénès2017-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Was introduced by 4f041384cb27f0d2. Unsoundness seems miraculously avoided by a safeguard I put in nativecode.ml. But other kernel changes in this commit should probably be reviewed carefully.
* | | | | Make the Constr.kind_of_term type parametric in sorts and universes.Gravatar Pierre-Marie Pédrot2017-03-31
| | | | |
| | | * | More efficient check in validity of side-effects.Gravatar Pierre-Marie Pédrot2017-03-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need to look for the size of the whole list to find whether we can extract a suffix from it, as we can do it in one go instead. This slowness was observable in abstract-heavy code.