Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Using ppx_deriving in a Coq plugin

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Using ppx_deriving in a Coq plugin


Chronological Thread 
  • From: e+coq-club AT x80.org (Emilio Jesús Gallego Arias)
  • To: Valentin Robert <vrobert AT cs.ucsd.edu>
  • Cc: "coq-club\@inria.fr" <coq-club AT inria.fr>
  • Subject: Re: [Coq-Club] Using ppx_deriving in a Coq plugin
  • Date: Sat, 07 May 2016 01:16:54 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=e+coq-club AT x80.org; spf=Neutral smtp.mailfrom=e+coq-club AT x80.org; spf=None smtp.helo=postmaster AT boipeva.ensmp.fr
  • Ironport-phdr: 9a23:Bj0ulRIeUBnAH0XNqtmcpTZWNBhigK39O0sv0rFitYgUI/zxwZ3uMQTl6Ol3ixeRBMOAu6MC07Wd6fyocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TWM5DIfUi/yKRBybrysXNWC3oLviKvop9X6WEZhunmUWftKNhK4rAHc5IE9oLBJDeIP8CbPuWZCYO9MxGlldhq5lhf44dqsrtY4q3wD89pozcNLUL37cqIkVvQYSW1+ayFmrPHs4CfKSQaJ+noaGl8RmBdSH0CR8gv9VJrrrgPxraxg0zKWe8D6UOZndy6l6vJmCxTvkWIMMyMz2HGH0op3lq0T4D+kphh+xMb2bZoHL7JRd6fZcNwdDUNbX89KFn8SSrigZpcCWrJSdd1TqJPw8h5X9UOz
  • Organization: X80 Heavy Industries

Hi Valentin,

Valentin Robert
<vrobert AT cs.ucsd.edu>
writes:

> I would like to know whether it is feasible to use ppx_deriving in a Coq
> plugin.

It is possible if you encapsulate all the logic in a ml file; mixing ml4
files and ppx is problematic, see the thread on coq-dev [1].

> I am currently building my plugin using a _CoqProject and coq_makefile. The
> generated Makefile.coq does not seem to use any of the fancy ocamlfind
> tooling, nor does it seem to cater for OCaml-specific flags (though maybe
> ZDEBUG/ZFLAGS could play that role).
>
> I would happily change this workflow if it meant I could use ppx_deriving.
>
> Does anyone have any experience with this?

jsCoq links with Coq and uses ppx to serialize data structures, see:

- https://github.com/ejgallego/jscoq/blob/master/coq-js/jssexp.ml
- https://github.com/ejgallego/jscoq/blob/master/coq-js/Makefile

I highly recommend you use ocamlfind.

I am indeed splitting serialization out of jsCoq to a plugin, I'll have
some code ready soon.

E.

[1] Message-ID: <20160226162505.GA23800@gargamel>



Archive powered by MHonArc 2.6.18.

Top of Page