<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coq/dev/base_include, branch master</title>
<subtitle>The formal proof system</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/'/>
<entry>
<title>[recordops] complete API rewrite; the module is now called [structures]</title>
<updated>2021-03-26T14:19:19+00:00</updated>
<author>
<name>Enrico Tassi</name>
</author>
<published>2021-03-18T18:15:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=34ece1ae3e6696bdc9556e5019c3b8ec3fd23f8a'/>
<id>34ece1ae3e6696bdc9556e5019c3b8ec3fd23f8a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace cl_index with cl_typ in coercionops.ml</title>
<updated>2021-03-09T09:10:23+00:00</updated>
<author>
<name>Kazuhiko Sakaguchi</name>
</author>
<published>2021-03-06T13:19:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=4bbbaff29bb748800636c7c737fdbda3a2ee819d'/>
<id>4bbbaff29bb748800636c7c737fdbda3a2ee819d</id>
<content type='text'>
The table of coercion classes `class_tab` is now indexed by `cl_typ` instead of
integers (`cl_index`). All the uses of `cl_index` and `Bijint` have been
replaced with `cl_typ` and `ClTypMap` respectively.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The table of coercion classes `class_tab` is now indexed by `cl_typ` instead of
integers (`cl_index`). All the uses of `cl_index` and `Bijint` have been
replaced with `cl_typ` and `ClTypMap` respectively.
</pre>
</div>
</content>
</entry>
<entry>
<title>[sysinit] new component for system initialization</title>
<updated>2021-01-27T08:45:49+00:00</updated>
<author>
<name>Enrico Tassi</name>
</author>
<published>2021-01-05T10:34:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=4264aec518d5407f345c58e18e014e15e9ae96af'/>
<id>4264aec518d5407f345c58e18e014e15e9ae96af</id>
<content type='text'>
This component holds the code for initializing Coq:
- parsing arguments not specific to the toplevel
- initializing all components from vernac downwards (no stm)

This commit moves stm specific arguments parsing to stm/stmargs.ml
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This component holds the code for initializing Coq:
- parsing arguments not specific to the toplevel
- initializing all components from vernac downwards (no stm)

This commit moves stm specific arguments parsing to stm/stmargs.ml
</pre>
</div>
</content>
</entry>
<entry>
<title>[numeral] [plugins] Switch from `Big_int` to ZArith.</title>
<updated>2020-08-27T17:03:33+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2018-10-16T12:55:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=094e4649c29e2426daca0476c140439de901dafe'/>
<id>094e4649c29e2426daca0476c140439de901dafe</id>
<content type='text'>
We replace Coq's use of `Big_int` and `num` by the ZArith OCaml
library which is a more modern version.

We switch the core files and easy plugins only for now, more complex
numerical plugins will be done in their own commit.

We thus keep the num library linked for now until all plugins are
ported.

Co-authored-by: Vincent Laporte &lt;Vincent.Laporte@fondation-inria.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We replace Coq's use of `Big_int` and `num` by the ZArith OCaml
library which is a more modern version.

We switch the core files and easy plugins only for now, more complex
numerical plugins will be done in their own commit.

We thus keep the num library linked for now until all plugins are
ported.

Co-authored-by: Vincent Laporte &lt;Vincent.Laporte@fondation-inria.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Refining out the Refiner.</title>
<updated>2020-06-29T13:20:37+00:00</updated>
<author>
<name>Pierre-Marie Pédrot</name>
</author>
<published>2020-06-26T10:56:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=a33f772631696c694f0d9a7fad3a914037c464b2'/>
<id>a33f772631696c694f0d9a7fad3a914037c464b2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[declare] [api] Removal of deprecated functions</title>
<updated>2020-06-26T12:38:10+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-05-19T22:47:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=d83e95cce852c5471593a27d0fdca39a262c885f'/>
<id>d83e95cce852c5471593a27d0fdca39a262c885f</id>
<content type='text'>
The previous refactoring in `Declare` to add `CInfo.t` makes this a
good moment to clean overlays up w.r.t. deprecation.

All cases but one is just a matter of simple renaming, for the other
the use of an internal API is replaced by newer API.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The previous refactoring in `Declare` to add `CInfo.t` makes this a
good moment to clean overlays up w.r.t. deprecation.

All cases but one is just a matter of simple renaming, for the other
the use of an internal API is replaced by newer API.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge Clenvtac into Clenv.</title>
<updated>2020-06-24T13:38:24+00:00</updated>
<author>
<name>Pierre-Marie Pédrot</name>
</author>
<published>2020-06-17T13:10:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=34aeda3d701efd5dead8890588fb02bcdb4980d2'/>
<id>34aeda3d701efd5dead8890588fb02bcdb4980d2</id>
<content type='text'>
Having two different modules led to the availability of internal API in
the mli.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Having two different modules led to the availability of internal API in
the mli.
</pre>
</div>
</content>
</entry>
<entry>
<title>[declare] [tactics] Move declare to `vernac`</title>
<updated>2020-04-21T06:39:12+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-04-19T02:58:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=e04377e2c5eca2b47bd5f8db320069aa47040488'/>
<id>e04377e2c5eca2b47bd5f8db320069aa47040488</id>
<content type='text'>
This PR moves `Declare` to `vernac` which will hopefully allow to
unify it with `DeclareDef` and avoid exposing entry internals.

There are many tradeoffs to be made as interface and placement of
tactics is far from clear; I've tried to reach a minimally invasive
compromise:

- moved leminv to `ltac_plugin`; this is unused in the core codebase
  and IMO for now it is the best place
- hook added for abstract; this should be cleaned up later
- hook added for scheme declaration; this should be cleaned up later
- separation of hints vernacular and "tactic" part should be also done
  later, for now I've introduced a `declareUctx` module to avoid being
  invasive there.

In particular this last point strongly suggest that for now, the best
place for `Class_tactics` would be also in `ltac`, but I've avoided
that for now too.

This partially supersedes #10951 for now and helps with #11492 .
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR moves `Declare` to `vernac` which will hopefully allow to
unify it with `DeclareDef` and avoid exposing entry internals.

There are many tradeoffs to be made as interface and placement of
tactics is far from clear; I've tried to reach a minimally invasive
compromise:

- moved leminv to `ltac_plugin`; this is unused in the core codebase
  and IMO for now it is the best place
- hook added for abstract; this should be cleaned up later
- hook added for scheme declaration; this should be cleaned up later
- separation of hints vernacular and "tactic" part should be also done
  later, for now I've introduced a `declareUctx` module to avoid being
  invasive there.

In particular this last point strongly suggest that for now, the best
place for `Class_tactics` would be also in `ltac`, but I've avoided
that for now too.

This partially supersedes #10951 for now and helps with #11492 .
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename files with Class in their name to make their role clearer.</title>
<updated>2019-12-22T17:28:41+00:00</updated>
<author>
<name>Pierre-Marie Pédrot</name>
</author>
<published>2019-12-16T10:41:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=cc3ded87f0f440eac2746d59b7aeba60ca9f691f'/>
<id>cc3ded87f0f440eac2746d59b7aeba60ca9f691f</id>
<content type='text'>
We restrict to those that are actually related to typeclasses, and
perform the following renamings:

Classops --&gt; Coercionops
Class --&gt; ComCoercion
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We restrict to those that are actually related to typeclasses, and
perform the following renamings:

Classops --&gt; Coercionops
Class --&gt; ComCoercion
</pre>
</div>
</content>
</entry>
<entry>
<title>[error] Remove special error printing pre-processing</title>
<updated>2019-07-06T22:57:28+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-03-03T15:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=07abf9818a6b47bb2c2bd0a8201da9743a0c10b6'/>
<id>07abf9818a6b47bb2c2bd0a8201da9743a0c10b6</id>
<content type='text'>
We remove the special error printing pre-processing in favor of just
calling the standard printers.

Error printing has been a bit complex for a while due to an incomplete
migration to a new printing scheme based on registering exception
printers; this PR should alleviate that by completing the registration
approach.

After this cleanup, it should not be ever necessary for normal
functions to worry a lot about catching errors and re-raising them,
unless they have some very special needs.

This change also allows to consolidate the `explainErr` and `himsg`
modules into one, removing the need to export the error printing
functions. Ideally we would make the contents of `himsg` more
localized, but this can be done in a gradual way.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We remove the special error printing pre-processing in favor of just
calling the standard printers.

Error printing has been a bit complex for a while due to an incomplete
migration to a new printing scheme based on registering exception
printers; this PR should alleviate that by completing the registration
approach.

After this cleanup, it should not be ever necessary for normal
functions to worry a lot about catching errors and re-raising them,
unless they have some very special needs.

This change also allows to consolidate the `explainErr` and `himsg`
modules into one, removing the need to export the error printing
functions. Ideally we would make the contents of `himsg` more
localized, but this can be done in a gradual way.
</pre>
</div>
</content>
</entry>
</feed>
