From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 246527F782 for ; Thu, 26 Feb 2015 16:15:39 +0100 (CET) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of kennethadammiller@gmail.com) identity=pra; client-ip=209.85.218.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="kennethadammiller@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of kennethadammiller@gmail.com designates 209.85.218.54 as permitted sender) identity=mailfrom; client-ip=209.85.218.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="kennethadammiller@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-oi0-f54.google.com) identity=helo; client-ip=209.85.218.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="postmaster@mail-oi0-f54.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0B9AgBOOO9UlDbaVdFbgj+BFVoEgwW+fIVwAoEdB00BAQEBAQEQAQEBAQcLCwkSMIQPAQEBAwESEQQZARseAwELBgULDSoCAiEBAREBBQEcBhMih3gBAwkIDbBDPjGLLoFrgneOeAoZJw1UhGwBAQEBBgEBAQEBARYBBQ6LBYJEgiYLgmiBQwWKWIMehVmEH4FGgRs5i2yCS4F0EiOBDAmELyAxgkMBAQE X-IPAS-Result: A0B9AgBOOO9UlDbaVdFbgj+BFVoEgwW+fIVwAoEdB00BAQEBAQEQAQEBAQcLCwkSMIQPAQEBAwESEQQZARseAwELBgULDSoCAiEBAREBBQEcBhMih3gBAwkIDbBDPjGLLoFrgneOeAoZJw1UhGwBAQEBBgEBAQEBARYBBQ6LBYJEgiYLgmiBQwWKWIMehVmEH4FGgRs5i2yCS4F0EiOBDAmELyAxgkMBAQE X-IronPort-AV: E=Sophos;i="5.09,653,1418079600"; d="scan'208";a="123528436" Received: from mail-oi0-f54.google.com ([209.85.218.54]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 26 Feb 2015 16:15:38 +0100 Received: by mail-oi0-f54.google.com with SMTP id v63so9717115oia.13 for ; Thu, 26 Feb 2015 07:15:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=GnbmsUSFLs81EQuljGvfZ5RhI0w53WfDKipBDCuittc=; b=beg1phUF00sV8SPr0fP9rwYyMGbfO09xZQH/2tDCMH8ZoS+drAgOXb8d7SxT3DYXXA S+2wXaMCaerOwWHxG01ziHCpQkaMRk99JSQ8dmuNnQwaI6UYHlrHEW45fQQVZi3i+s5t csHhbF20+Y67XfuF3TY63yC/tTDC5KfWq6xceqPpDW7fphO/ltGsiD49bRznKZrN+ohS kOLcUpIuauekF9NK1NFyPd8PrdEFELkrJ4eXmArFRVz7+KcCPsv0FKpNpb4zsZsg/wJy TdEysXtv18NSBloSs+nC8+CNY6B7ChBxF5al4nMcUDJYunMPVgiGmtF30/0jRodNW8I9 PH7g== MIME-Version: 1.0 X-Received: by 10.202.224.9 with SMTP id x9mr6076785oig.62.1424963737094; Thu, 26 Feb 2015 07:15:37 -0800 (PST) Received: by 10.202.0.211 with HTTP; Thu, 26 Feb 2015 07:15:37 -0800 (PST) In-Reply-To: References: Date: Thu, 26 Feb 2015 10:15:37 -0500 Message-ID: From: Kenneth Adam Miller To: caml users Content-Type: multipart/alternative; boundary=001a113d593a5e11d6050fff39ec Subject: Re: [Caml-list] Protobuf and OCaml --001a113d593a5e11d6050fff39ec Content-Type: text/plain; charset=UTF-8 Well put Koen. The other thing that's interesting is that with the build chain being piqi -> proto files, you can add support for languages to automatically support your data schema other than what the original protocol buffers project provides for. So, originally pb started with python, java, and C/++. Now it supports Google's go and all kinds of other languages. On Thu, Feb 26, 2015 at 10:07 AM, Koen De Keyser wrote: > I've worked with Piqi, converting a project that was using custom > serialization to Protobuf. This was a fairly pleasant experience: the main > developer was very responsive and the code base for the code generator is > sufficiently clean that it made adding custom functionality quite easy. > > The main reason I went with Piqi is the code generation functionality: one > of the main reasons to adopt something like Protobuf is the possibility of > generating code in a multitude of languages (e.g. Python for scripting / > testing purposes) from a single definition file (the proto file in this > case). Any change there is automatically picked up by the build process in > all of the languages, so your code stays in sync across languages. This is > not the case if the definition of the struct is in Ocaml itself. > > Koen De Keyser > > On Wed, Feb 25, 2015 at 5:58 PM, Trevor Smith < > trevorsummerssmith@gmail.com> wrote: > >> Hello, >> >> Is anyone out there using OCaml with Protobufs? If so, what library/tools >> are you using, and how do you like the setup? Also, are you using Protobufs >> in a production setting? >> >> I found online but have not used any of the below myself: >> >> 1) piqi - http://piqi.org/ >> 2) obitz - https://github.com/orbitz/ocaml-protobuf >> 3) whitequark's protobufs - https://github.com/orbitz/ocaml-protobuf >> >> Curious to hear your experiences. Thank you. >> >> Trevor >> > > --001a113d593a5e11d6050fff39ec Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Well put Koen.

The other thing that'= ;s interesting is that with the build chain being piqi -> proto files, y= ou can add support for languages to automatically support your data schema = other than what the original protocol buffers project provides for. So, ori= ginally pb started with python, java, and C/++. Now it supports Google'= s go and all kinds of other languages.=C2=A0

On Thu, Feb 26, 2015 at 10:07 AM, Ko= en De Keyser <koen.dekeyser@gmail.com> wrote:
I've worked with P= iqi, converting a project that was using custom serialization to Protobuf. = This was a fairly pleasant experience: the main developer was very responsi= ve and the code base for the code generator is sufficiently clean that it m= ade adding custom functionality quite easy.

The main reason I = went with Piqi is the code generation functionality: one of the main reason= s to adopt something like Protobuf is the possibility of generating code in= a multitude of languages (e.g. Python for scripting / testing purposes) fr= om a single definition file (the proto file in this case). Any change there= is automatically picked up by the build process in all of the languages, s= o your code stays in sync across languages. This is not the case if the def= inition of the struct is in Ocaml itself.

Koen De Keyser

O= n Wed, Feb 25, 2015 at 5:58 PM, Trevor Smith <trevorsummerssmi= th@gmail.com> wrote:
Hello,

Is anyone out there using OCaml with P= rotobufs? If so, what library/tools are you using, and how do you like the = setup? Also, are you using Protobufs in a production setting?
I found online but have not used any of the below myself:
=

1) piqi -=C2=A0http://piqi.org/
3) whitequark's protobufs -=C2=A0https://git= hub.com/orbitz/ocaml-protobuf

Curious to hear = your experiences.=C2=A0Thank y= ou.

Trevor


--001a113d593a5e11d6050fff39ec--