coq / platform

Multi platform setup for Coq, Coq libraries and tools
Creative Commons Zero v1.0 Universal
187 stars 49 forks source link

Please include the reduction-effects plugin in the standard install #32

Closed JasonGross closed 3 years ago

JasonGross commented 5 years ago

This plugin is useful for debugging Gallina, but is extremely hard to discover (it took me three or four searches to find the PR that added support for it (#714 and coq/coq#85)). I just used it to answer a discourse thread. I think it should be included in the Windows installer, at least. The first step might be getting the plugin into opam and the CI.

cc @herbelin as the author of the plugin

Zimmi48 commented 5 years ago

The reasons that pushed for this to be done as an external plugin were kind of dubious from the beginning, as this was not the choice of the author of the plugin, makes discoverability harder, etc. The experimental nature of the thing could instead be flagged as proposed in coq/coq#9664.

Furthermore, the author is not used to having to maintain external plugins, and similarly to Bignums, we end up with everyone forgetting to update the opam package, etc.

I see two possible routes for these two plugins: either they get back into the main repo (this could be under an external/ folder, which would be tested in CI in the same way that external plugins are tested, with specific opam files, etc.) or they move to coq-community. The Coq development team has no business maintaining a large diversity of packages spread out over multiple repositories.

gares commented 5 years ago

I think the simplest thing today is to have it part of coq-comunity, since the external/ thing is not a thing yet, while coq-community is.

Zimmi48 commented 5 years ago

Right. @JasonGross Would you like to be the plugin's principal maintainer in coq-community? Given that we can also add it to Coq's CI at the same time (as you suggested), this will mostly consist in handling incoming PRs, and preparing new compatibility releases every six months.

Zimmi48 commented 5 years ago

(and we can keep this issue open until it is added to the Windows bundle)

JasonGross commented 5 years ago

Sure, I am fine with handling incoming PRs and branching / tagging / updating opam or whatever as necessary, every six months, as long as someone tells me what needs to be done the first time. (I will probably write a script that executes the "prepare compatibility release" steps.)

Zimmi48 commented 5 years ago

I will probably write a script that executes the "prepare compatibility release" steps.

See also coq-community/manifesto#49.

Zimmi48 commented 5 years ago

This plugin is now hosted in coq-community: https://github.com/coq-community/reduction-effects Before it can be added to Coq's CI, it will need to be ported to Coq 8.9-8.11.

liyishuai commented 4 years ago
JasonGross commented 4 years ago

Note that it's been in the Coq's CI since https://github.com/coq/coq/pull/11469. Now we just need to get it included in the installer.

JasonGross commented 4 years ago

cc @MSoegtropIMC , I think

MSoegtropIMC commented 4 years ago

OK, I will add it.

Zimmi48 commented 4 years ago

@MSoegtropIMC I can also address this if you don't have time.

MSoegtropIMC commented 4 years ago

It would help, yes.

MSoegtropIMC commented 4 years ago

Btw.: my plan is to deliver a Coq platform based Windows installer for 8.12 in the intended timeframe (1..3 months after the 8.12 release - it will likely be less than 2 months). I also plan to deliver a beta for 8.12 beta. So I don't know if it is required to add this to the 8.12 legacy Windows installer. I am currently concentrating on getting the dependency wise complicated pieces of the platform pulled straight (VST and CompCert).

Zimmi48 commented 4 years ago

Let's delay this issue to the platform. We can always decide to add it in a patch-level release of Coq if the platform work hasn't progressed as much as expected.

MSoegtropIMC commented 3 years ago

Sorry for the really long delay. I now included it in the 8.13~2021.09 pick and plan to include it in 8.14~2021.09 as well. But since it is a 0.X version, I added it to the extended set - hope this is OK.

I tested the one provided test file and it appears to work.

MSoegtropIMC commented 3 years ago

Fixed in https://github.com/coq/platform/pull/143