caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Markus Mottl" <markus.mottl@gmail.com>
To: "David Teller" <David.Teller@ens-lyon.org>
Cc: OCaml <caml-list@inria.fr>
Subject: Re: [Caml-list] Deriving + type-conv + OCaml-Templates + camlp4* = ?
Date: Tue, 26 Feb 2008 17:01:59 -0500	[thread overview]
Message-ID: <f8560b80802261401pc08ad41v677dc016fec8544f@mail.gmail.com> (raw)
In-Reply-To: <1204057629.6163.50.camel@Blefuscu>

On Tue, Feb 26, 2008 at 3:27 PM, David Teller <David.Teller@ens-lyon.org> wrote:
>   Browsing around the net, I've found three
>  "scrap-your-boilerplate"-style projects for OCaml: the simple Type-conv,
>  the ambitious Deriving and the unmaintained OCaml-Templates, and of
>  course the ability to use camlp4/camlp5 for the same purpose. I imagine
>  that there are a number of nice boilerplate-based modules just waiting
>  to be implemented or adopted.
>
>   As far as I understand, there's no interaction between the project
>  authors, which is a shame. So this is an open call to whoever is in
>  charge of each work: do you think it would be possible for you all to
>  join forces and produce something robust, simple and possible to adopt
>  as a standard ?

I think that different projects have different trade-offs that are
hard, if not impossible, to combine.  Deriving is a very elegant,
general approach, but last time I checked it would be hard to generate
highly optimized code with it, and it was also not complete (e.g.
handling hard cases like polymorphic variants with inherited types,
etc.).  Type-conv was mostly factored out of sexplib to make it
possible to have different type converters in different preprocessors,
because we are planning to release our binary protocol library very
soon.  Type-conv only combines a few often needed constructs, but in
my experience the very vast part of new type converters has to be
written by hand anyway (at least if you care about performance / good
code generation) so there is little to gain here.  I don't know much
about OCaml-Templates.

Regards,
Markus

-- 
Markus Mottl        http://www.ocaml.info        markus.mottl@gmail.com


  reply	other threads:[~2008-02-26 22:02 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-26 20:27 David Teller
2008-02-26 22:01 ` Markus Mottl [this message]
2008-02-27 10:56   ` [Caml-list] " Jeremy Yallop
2008-02-28 18:17     ` Markus Mottl
2008-02-26 22:02 ` Till Varoquaux

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f8560b80802261401pc08ad41v677dc016fec8544f@mail.gmail.com \
    --to=markus.mottl@gmail.com \
    --cc=David.Teller@ens-lyon.org \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).