[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] going ocaml 4.02-only

  • To: mirageos-devel <mirageos-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Anil Madhavapeddy <anil@xxxxxxxxxx>
  • Date: Mon, 22 Feb 2016 12:00:01 +0000
  • Cc: Jeremie Dimino <jdimino@xxxxxxxxxxxxxx>
  • Delivery-date: Mon, 22 Feb 2016 12:00:14 +0000
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=recoil.org; h=from :content-type:content-transfer-encoding:subject:date:message-id :cc:to:mime-version; q=dns; s=selector1; b=GAu6vCA6vJa+qKtOt14Jr QiZqQ2VNvO/2vahUSeobArIkeTCXQMj4352NyZ0d+VIbsjei7VbL7qHJYEbDS4v1 8c1aQTUjpdaGELMZNbFYtGY8VhefVJqNklYfKw+JFN/a1pzTIt2eKcFXkWC7ZxAP YPqRqCxJ/IoWp41Y07wOVk=
  • List-id: Developer list for MirageOS <mirageos-devel.lists.xenproject.org>

It looks like it'll be quite difficult to maintain OCaml 4.01 compatibility 
simultaneously with OCaml 4.02.  I took a look at doing this for Conduit, and 
ended up with this situation:

- 0.10.0 depends on sexplib.syntax (the old camlp4 package), so the metadata 
for this has been fixed up in OPAM.
- 0.11dev is ported to pa_sexp_conv (the new camlp4 package in latest Core), 
but this is only available on 4.02+.  It also introduces an API change in 
Async_ssl thanks to the max_pending_connection argument disappearing.
- 0.11dev could also thus be ported to use ppx directly, since it is now 

We have the option of making a pa_sexp_conv package available for 4.01 and 
compatibility, or just forge forward to jump the camlp4/ppx chasm and make 
everything use PPX.  I'd strongly advocate for the latter (4.02-only support 
moving forward), since 4.03 is just around the corner.

Any strong objections to dropping 4.01 support in Mirage libraries to allow us 
to take advantage of PPX and drop camlp4?

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.