coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Jonathan Leivent <jonikelee AT gmail.com>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Some questions on interface with coqtop
- Date: Fri, 11 Dec 2015 18:24:34 -0500
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jonikelee AT gmail.com; spf=Pass smtp.mailfrom=jonikelee AT gmail.com; spf=None smtp.helo=postmaster AT mail-qg0-f52.google.com
- Ironport-phdr: 9a23:wf8fZxHj0HP36mATVT2aEp1GYnF86YWxBRYc798ds5kLTJ75pM+wAkXT6L1XgUPTWs2DsrQf27SQ6/iocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TWM5DIfUi/yKRBybrysXNWC0YLvj6ibwN76XUZhvHKFe7R8LRG7/036l/I9ps9cEJs30QbDuXBSeu5blitCLFOXmAvgtI/rpMYwu3cYh/V0/MlZFK7+Yq4QTLpCDT1gPXpmytfssEzhSg2G+nsVVC0ynxtWDg7ZpEX4WZHwsSb+u+dV1yyTPMmwRrcxD2fxp5x3QQPl3X9UfwUy93va35R9
On 12/11/2015 03:51 PM, Gregory Malecha wrote:
...
I little while ago I wrote a small plugin that allows you to iterate over
the theorems in a hint database. The code is available here:
https://github.com/gmalecha/coq-with-hint-db
It has versions that work in both 8.4pl6 and 8.5 (beta3). It is not an
optimal implementation by any stretch of the imagination, but it may be
sufficient for some purposes.
I will take a close look at this. I have wanted to be able to use Hint databases for my own purposes without using auto, eauto, or typeclasses eauto - because all of them are somewhat broken with respect to proper proof search backtracking (auto is closest to working properly, but still has issues). So, this iterator could be very useful to me.
...
A few other plugins that I have written might help
- template-coq (https://github.com/gmalecha/template-coq) constructs a
syntactic representation of Coq terms within Coq.
- coq-plugin-utils (https://github.com/gmalecha/coq-plugin-utils) has a few
functions that I have found useful when writing Coq plugins, particularly
ones that extend Ltac.
Thomas Braibant also wrote a timing plugin that is documented. I'm not
certain if it is still compatible with 8.5
https://github.com/braibant/Timing-plugin
Thanks. I will look at these - but I still wish there was a better divide between Coq developers and Coq users, such that even very serious users didn't have to become developers.
A while ago I examined several plugins in an attempt to write what I thought would be a trivial one: a conversion tactical between OCaml and Coq numbers (between integer and constrs of type Z, for instance). However, nothing about any of the tactics I saw could be used to get this fundamental behavior. I suspect, even though it is probably easy, it requires considerable knowledge of Coq internals to do properly. And that's part of the problem with plugins - it's probably going to be the case that each reason for writing a plugin is an attempt to bridge between Ltac and some part of Coq's internals that nothing else bridges between.
-- Jonathan
- [Coq-Club] Some questions on interface with coqtop, Epiphanie, 12/11/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Jonathan Leivent, 12/11/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Gregory Malecha, 12/11/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Jonathan Leivent, 12/12/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Gregory Malecha, 12/12/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Épiphanie, 12/13/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Jonathan Leivent, 12/13/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Épiphanie, 12/13/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Gregory Malecha, 12/12/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Jonathan Leivent, 12/12/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Gregory Malecha, 12/11/2015
- Re: [Coq-Club] Some questions on interface with coqtop, Jonathan Leivent, 12/11/2015
Archive powered by MHonArc 2.6.18.