<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coq/topbin, branch master</title>
<subtitle>The formal proof system</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/'/>
<entry>
<title>[build] Split stdlib to it's own opam package.</title>
<updated>2021-03-03T15:06:14+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-06-22T15:52:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=ab98d847d237af3cd0e46edef42218be65cfc98f'/>
<id>ab98d847d237af3cd0e46edef42218be65cfc98f</id>
<content type='text'>
We introduce a new package structure for Coq:

- `coq-core`: Coq's OCaml tools code and plugins
- `coq-stdlib`: Coq's stdlib [.vo files]
- `coq`: meta-package that pulls `coq-{core,stdlib}`

This has several advantages, in particular it allows to install Coq
without the stdlib which is useful in several scenarios, it also open
the door towards a versioning of the stdlib at the package level.

The main user-visible change is that Coq's ML development files now
live in `$lib/coq-core`, for compatibility in the regular build we
install a symlink and support both setups for a while.

Note that plugin developers and even `coq_makefile` should actually
rely on `ocamlfind` to locate Coq's OCaml libs as to be more robust.

There is a transient state where we actually look for both
`$coqlib/plugins` and `$coqlib/../coq-core/plugins` as to support
the non-ocamlfind plus custom variables.

This will be much improved once #13617 is merged (which requires this
PR first), then, we will introduce a `coq.boot` library so finally
`coqdep`, `coqchk`, etc... can share the same path setup code.

IMHO the plan should work fine.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We introduce a new package structure for Coq:

- `coq-core`: Coq's OCaml tools code and plugins
- `coq-stdlib`: Coq's stdlib [.vo files]
- `coq`: meta-package that pulls `coq-{core,stdlib}`

This has several advantages, in particular it allows to install Coq
without the stdlib which is useful in several scenarios, it also open
the door towards a versioning of the stdlib at the package level.

The main user-visible change is that Coq's ML development files now
live in `$lib/coq-core`, for compatibility in the regular build we
install a symlink and support both setups for a while.

Note that plugin developers and even `coq_makefile` should actually
rely on `ocamlfind` to locate Coq's OCaml libs as to be more robust.

There is a transient state where we actually look for both
`$coqlib/plugins` and `$coqlib/../coq-core/plugins` as to support
the non-ocamlfind plus custom variables.

This will be much improved once #13617 is merged (which requires this
PR first), then, we will introduce a `coq.boot` library so finally
`coqdep`, `coqchk`, etc... can share the same path setup code.

IMHO the plan should work fine.
</pre>
</div>
</content>
</entry>
<entry>
<title>[stm] move par: implementation to vernac/comTactic and stm/partac</title>
<updated>2020-10-09T15:09:02+00:00</updated>
<author>
<name>Enrico Tassi</name>
</author>
<published>2020-09-25T16:09:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=a023009ba68c70d8654b29bd2f68631cc5536ba9'/>
<id>a023009ba68c70d8654b29bd2f68631cc5536ba9</id>
<content type='text'>
The current implementation of par: is still in the STM, but is optional.
If the STM does not take over it, it defaults to the implementation of
in comTactic which is based on all: (i.e. sequential).

This commit also moved the interpretation of a tactic from g_ltac to
vernac/comTactic which is more appropriate.

Co-authored-by: Gaëtan Gilbert &lt;gaetan.gilbert@skyskimmer.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current implementation of par: is still in the STM, but is optional.
If the STM does not take over it, it defaults to the implementation of
in comTactic which is based on all: (i.e. sequential).

This commit also moved the interpretation of a tactic from g_ltac to
vernac/comTactic which is more appropriate.

Co-authored-by: Gaëtan Gilbert &lt;gaetan.gilbert@skyskimmer.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Update headers in the whole code base.</title>
<updated>2020-03-18T11:15:43+00:00</updated>
<author>
<name>Théo Zimmermann</name>
</author>
<published>2020-03-18T11:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=a99776e10e0b2198d2b811ad82631111fb450f8a'/>
<id>a99776e10e0b2198d2b811ad82631111fb450f8a</id>
<content type='text'>
Add headers to a few files which were missing them.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add headers to a few files which were missing them.
</pre>
</div>
</content>
</entry>
<entry>
<title>[exn] Forbid raising in exn printers, make them return Pp.t option</title>
<updated>2020-02-24T17:24:40+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-01-31T14:57:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=c216daf5d5f8215947bce10e55d30c35be1a56ba'/>
<id>c216daf5d5f8215947bce10e55d30c35be1a56ba</id>
<content type='text'>
Raising inside exception printers is quite tricky as the order of
registration for printers will indeed depend on the linking order.

We thus forbid this, and make our API closer to the upstream
`Printexn` by having printers return an option type.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Raising inside exception printers is quite tricky as the order of
registration for printers will indeed depend on the linking order.

We thus forbid this, and make our API closer to the upstream
`Printexn` by having printers return an option type.
</pre>
</div>
</content>
</entry>
<entry>
<title>[rfc] [mltop] Removal of dynamic loading of object and `.ml` files</title>
<updated>2020-01-29T16:29:45+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-01-16T19:07:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=ab2ce06bffb0f06be96af24c0be546f5ebd11471'/>
<id>ab2ce06bffb0f06be96af24c0be546f5ebd11471</id>
<content type='text'>
This seems seldom used and I think in general instrumentation this way
is pretty limited (usually better to use the build system to tweak)

It thus seems worth removing as to simplify `Mltop` a bit, but of
course comments are welcome.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This seems seldom used and I think in general instrumentation this way
is pretty limited (usually better to use the build system to tweak)

It thus seems worth removing as to simplify `Mltop` a bit, but of
course comments are welcome.
</pre>
</div>
</content>
</entry>
<entry>
<title>[mltop] Remove error handling hacks in favor of default methods.</title>
<updated>2020-01-16T19:00:03+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-01-16T18:57:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=cd7052d68fb1bd56c4c1182a47b180b992abd5e0'/>
<id>cd7052d68fb1bd56c4c1182a47b180b992abd5e0</id>
<content type='text'>
We don't need to handle `Dynlink` errors specially anymore.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We don't need to handle `Dynlink` errors specially anymore.
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] Update to dune language version 2.0</title>
<updated>2019-12-04T13:14:58+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-11-24T18:57:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=1d454c7721a429490165d1147313c061164b0b66'/>
<id>1d454c7721a429490165d1147313c061164b0b66</id>
<content type='text'>
This is the minimal set of changes requires for Coq to build under 2.0
mode. We may likely take advantage of some more new features.

Note that Dune 2.0 requires OCaml &gt;= 4.06.0, OPAM allows to use Dune
in older versions as it will install a secondary compiler.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the minimal set of changes requires for Coq to build under 2.0
mode. We may likely take advantage of some more new features.

Note that Dune 2.0 requires OCaml &gt;= 4.06.0, OPAM allows to use Dune
in older versions as it will install a secondary compiler.
</pre>
</div>
</content>
</entry>
<entry>
<title>An even more uniform treatment of the -help option across executables.</title>
<updated>2019-07-08T00:31:27+00:00</updated>
<author>
<name>Hugo Herbelin</name>
</author>
<published>2019-05-08T20:42:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=fe487e8eaae3186803ec657c517d0ebebab3bafd'/>
<id>fe487e8eaae3186803ec657c517d0ebebab3bafd</id>
<content type='text'>
Incidentally fix some missing newline in coqc help, and give proper
help for coqidetop and the "coq*worker"s.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Incidentally fix some missing newline in coqc help, and give proper
help for coqidetop and the "coq*worker"s.
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] Enable optimization options in the compilation of the VM.</title>
<updated>2019-06-21T11:02:19+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-02-27T23:12:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=4a60c81e9fc67d98558b48d9f79e2d3610d60d77'/>
<id>4a60c81e9fc67d98558b48d9f79e2d3610d60d77</id>
<content type='text'>
So far we didn't setup optimization flags for the VM in the Dune
build, but time has come to experiment with such flags, we try -O3.

Enabling `-flto` in the final binary build would be great, however
this seems to break windows.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
So far we didn't setup optimization flags for the VM in the Dune
build, but time has come to experiment with such flags, we try -O3.

Enabling `-flto` in the final binary build would be great, however
this seems to break windows.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update ml-style headers to new year.</title>
<updated>2019-06-17T16:08:32+00:00</updated>
<author>
<name>Théo Zimmermann</name>
</author>
<published>2019-06-06T09:22:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=42e09b6d888a29cc6273b8e77d5f9a2e5582abc4'/>
<id>42e09b6d888a29cc6273b8e77d5f9a2e5582abc4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
