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 mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id EC7458245F for ; Sun, 11 Feb 2018 16:01:52 +0100 (CET) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=maxime.ransan@gmail.com; spf=Pass smtp.mailfrom=maxime.ransan@gmail.com; spf=None smtp.helo=postmaster@mail-wm0-f51.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of maxime.ransan@gmail.com) identity=pra; client-ip=74.125.82.51; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="maxime.ransan@gmail.com"; x-sender="maxime.ransan@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of maxime.ransan@gmail.com designates 74.125.82.51 as permitted sender) identity=mailfrom; client-ip=74.125.82.51; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="maxime.ransan@gmail.com"; x-sender="maxime.ransan@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wm0-f51.google.com) identity=helo; client-ip=74.125.82.51; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="maxime.ransan@gmail.com"; x-sender="postmaster@mail-wm0-f51.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3A1rI+8BBHtwgo/L3GjFIYUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPv/r8bcNUDSrc9gkEXOFd2Cra4c0qyO6+jJYi8p2d65qncMcZhBBVcuqP?= =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6?= =?us-ascii?q?JvjvGo7Vks+7y/2+94fcbglUmTaxe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfO?= =?us-ascii?q?pWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnM?= =?us-ascii?q?VhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Qiqp4bt1RxD0iS?= =?us-ascii?q?cHLz85/3/Risxsl6JQvRatqwViz4LIfI2ZMfxzdb7fc9wHX2pMRsleVyJDDY28?= =?us-ascii?q?YYUBDPcPM/hEoITmvVQCsQGzCBOwCO/zyDJFgGL9060g0+QmFAHLxAsuEMgBsX?= =?us-ascii?q?TVqdX6KroZX/yvw6nO1jXMdfVW0ir65YjNaB8grvCMXbdufsbL00kgDQXFjk6K?= =?us-ascii?q?pozjJD6V2eENvHKa7+pkT+6gl2knqwRorzWp28wiiZHJi5oXx13L7yl13Zg5KN?= =?us-ascii?q?2iREN4f9KoCptduzycOoBrWM0tWXtotzw/yrAeuZ60YiwKyJM/yh7acfOHcoyI?= =?us-ascii?q?7gvtVeaUPTt0nXxldbKiixqo/kigzer8Vsaw0FlUtCZKjt7MtnUV2xzS7MiIVO?= =?us-ascii?q?d981+j1DuAzQzf9/9ILEAumafYNZIt2L49mocLvUTGBCD2mUH2jKGMdkUj/+il?= =?us-ascii?q?8+Hnba/pp5+dMo97lBvyMr40lcy5GuQ3KA4OUnOU+eS5zrLj/En5TK9Wgf0xl6?= =?us-ascii?q?nVqIraKtgDpq6lHw9V1Z4u5AqlADej1NQUhH0HLFNeeBKblIXpIFHPIPXgDfil?= =?us-ascii?q?mViskTFrx+rHPrL7GJnNIGLDw//deuNl6kVSzA0El/hA6pgSBrxSDuj0XxrUvc?= =?us-ascii?q?zZCxJxCQWy2O/hQIF435MfXG/JGKafK6rUmVCN7+MrZeKLYdlG637GN/E56qu2?= =?us-ascii?q?3jcCklgHcPzshMNPMSHqLrFdO0ycJEHUrJIEGGYOsBA5SbWz2lKHWD9XIX21Wv?= =?us-ascii?q?Blv21pOMedFY7GA7uVrvmZxi7iR89ZY2lHDhaHFnK6L9zZCcdJUzqbJ4paqhJB?= =?us-ascii?q?VbWlTNV8hxSntQu/1L8/a+SJo2sXspXs0NUz7OrWx0k/?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DkAABCWoBahjNSfUpdGgEBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYJagk4og2WBOZcNggKEAY18h3MKhTsCgjoZBwQ0FAECAQEBAQEBAQE?= =?us-ascii?q?BEgEBAQgLCwgoL4I4JAGCRgEBAQMBIx0BGx0BAwELBgULDSoCAiEBAREBBQEcG?= =?us-ascii?q?QgTigEBAw0IoypAjBeCBQUBHIMMBYNYChknDRVEWIINAQEBAQEBBAEBAQEBARo?= =?us-ascii?q?CBhKEaoIVgVeEYDaCa4IXAQGDNYJlBYsImHE1CYJMji6FCoIfhiqLe4sUgzaJO?= =?us-ascii?q?hQlgRc2R4ErMxojUjKCFIJGH4ISQTeKEoI8AQEB?= X-IPAS-Result: =?us-ascii?q?A0DkAABCWoBahjNSfUpdGgEBAQEBAgEBAQEIAQEBAYJagk4?= =?us-ascii?q?og2WBOZcNggKEAY18h3MKhTsCgjoZBwQ0FAECAQEBAQEBAQEBEgEBAQgLCwgoL?= =?us-ascii?q?4I4JAGCRgEBAQMBIx0BGx0BAwELBgULDSoCAiEBAREBBQEcGQgTigEBAw0Ioyp?= =?us-ascii?q?AjBeCBQUBHIMMBYNYChknDRVEWIINAQEBAQEBBAEBAQEBARoCBhKEaoIVgVeEY?= =?us-ascii?q?DaCa4IXAQGDNYJlBYsImHE1CYJMji6FCoIfhiqLe4sUgzaJOhQlgRc2R4ErMxo?= =?us-ascii?q?jUjKCFIJGH4ISQTeKEoI8AQEB?= X-IronPort-AV: E=Sophos;i="5.46,496,1511823600"; d="scan'208,217";a="254398014" Received: from mail-wm0-f51.google.com ([74.125.82.51]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 11 Feb 2018 16:01:51 +0100 Received: by mail-wm0-f51.google.com with SMTP id x4so5306816wmc.0 for ; Sun, 11 Feb 2018 07:01:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QXBsatKXZySkKbaXMpmUcLDyPpE8xc+mIhMFXB2PzoA=; b=MVbEI2N9u/91GSP5OlJLazirl1zKzUUBEL15y/O/7PaVCVJO1lgso01aFvV3u3l06I ERbEIKQkVRnfQM9Vqa8YatfHjGez0fG+WiZFkbUeQiYBLHhIsOcnApvUnfGEbydBCTKN jRfkZUo5G1ct2ZbrX+Xyy6S6x3l9r3OvHQHzFJbSGDOSfD0CnSKeV2O8IEQ3UUsVbLI1 o3uGiAvFz4CDPwK1VHuby0z1pdp6m+oM7mxel8Hc9rv0RQ/B/s9oDMMukKugPZvBlr13 sfrsyykX67tM+BGk1WqeB//YfF4HomVN5cF+bYSJhKJzZVgFMsXlpVew4qNFr+aWdIu9 TW4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QXBsatKXZySkKbaXMpmUcLDyPpE8xc+mIhMFXB2PzoA=; b=EqZ2vzbhfprxYWLIQBUAmLNVgHFoHt5sRRY7C2xOJUQA7QpvCwClWHjbkwVGF0HlAM TDl5OSJeaym+oYFMFh+Iua1SWgpOS1srKLofVk+h8yLCkgVLO7YQFwKEwPPn78nMuQDZ SMahC0RxKAGOGbyoNfuXioY4ZG6l+cRASiz8VuSxoKcFv2Pzqortjf/CUptOWXyQOTbf h1qvVhNZoYKLVH05aDepCbk4cFFo8wEOlN56jxqlCxhDld/c/D+XOF4qcd4mfhnXOvHM DZlqDzAFc8yf7cnN9+zJL9Bu2bS2eDC77+8Rp25t8PYvJbeoeRR0N1+9FJdYZ5nh7+Ys bEWA== X-Gm-Message-State: APf1xPDxkVOG/qTXs8Soa7V1jJQQRRPJyfIOsaCbdXXnxH/aKI+5ijSu kFumkF843T9k5aS2vuyTFDhbf6luWeHjDMjSwvE= X-Google-Smtp-Source: AH8x226+f/cWGxecgfOMBmvDOya/lQ9wsVq6nwVbOJty5u+XqBBYWX5PBpZCxkX+fOw+s4soWn0ohlUPN/GA/QMlUyY= X-Received: by 10.80.132.170 with SMTP id 39mr11867175edq.231.1518361310881; Sun, 11 Feb 2018 07:01:50 -0800 (PST) MIME-Version: 1.0 References: <4236B9F6-0302-4E8E-9DB7-3320A1C28FE8@louisroche.net> In-Reply-To: From: Maxime Ransan Date: Sun, 11 Feb 2018 15:01:40 +0000 Message-ID: To: picflo_2@web.de Cc: Kenneth Adam Miller , =?UTF-8?B?IkxvdWlzIFJvY2jDqSI=?= , caml users Content-Type: multipart/alternative; boundary="f403045c91d4936be80564f10ab8" Subject: Re: [Caml-list] Protobuf for ocaml --f403045c91d4936be80564f10ab8 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Both solution focuses purely on data serialization. The protocol part (choice of transport protocol, service discovery, retries, async vs async..) are expected to be done outside on those library. On Sun, Feb 11, 2018 at 9:15 AM wrote: > Hi, > > thanks for all the answers, I will look deeper into ocaml-protoc. > > As a kind of follow-up question. Do you add some kind of unique identifier > to every message to allow resending the message in case some service goes > down? > > Thanks again for the help here I highly appreciate it, > Florian > > > *Gesendet:* Sonntag, 11. Februar 2018 um 03:15 Uhr > *Von:* "Maxime Ransan" > *An:* "Kenneth Adam Miller" > *Cc:* "Louis Roch=C3=A9" , picflo_2@web.de, "caml us= ers" < > caml-list@inria.fr> > *Betreff:* Re: [Caml-list] Protobuf for ocaml > The difference between ppx_deriving_protobuf and ocaml-protoc is that the > former generates a protobuf schema from an OCaml type while the later > generates the OCaml type from a protobuf schema. They are both using the > same runtime library for the binary encoding. > > Although I have written ocaml-protoc as a personal project, it has been > used successfully in a professional context to interface with apache meso= s. > > > On Sat, Feb 10, 2018 at 8:10 PM Kenneth Adam Miller < > kennethadammiller@gmail.com> wrote: > >> The space complexity is ridiculous (at least X^2, possibly 2^n), it isn't >> as convenient as any of the others in allowing you to derive your own >> specs, it's horribly written code that uses ref and doesn't conform to >> OCaml conventions, it caused a lot of crashing on our end, only works fo= r a >> particular compile target until I went to update it, the Makefile is an >> awful unmaintainable and unreadable mess, the language it defines is >> unnecessary and it's hard to get anything to change. >> >> We (me and some team mates) had this forced on us for the features we >> required, which was to be able to get data in and out of ocaml to other >> languages, and wanted to use it for a large project. It ended up causing= a >> lot of unnecessary and unwanted slow down in development, both for our >> cases and for CMU's BAP. They had the same problems, and everyone that h= as >> touched it had to do unwanted work trying to get it to reliably do what = it >> advertises. >> >> On Sat, Feb 10, 2018 at 7:43 PM, Louis Roch=C3=A9 >> wrote: >>> >>> Can you give more details please ? >> >> >>> >>> > On 11 Feb 2018, at 04:56, Kenneth Adam Miller < >>> kennethadammiller@gmail.com> wrote: >>> > >>> > **Dont use piqi!** It's really terrible code. >>> >> --f403045c91d4936be80564f10ab8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Both solution focuses purely on data serialization. The pr= otocol part (choice of transport protocol, service discovery, retries, asyn= c vs async..) are expected to be done outside on those library.

On Sun, Feb 11, 2018 at= 9:15 AM <picflo_2@= web.de> wrote:
Hi,
=C2=A0
thanks for all the answers, I will look deeper into ocaml-protoc.
=C2=A0
As a kind of follow-up question. Do you add some kind of unique identi= fier to every message to allow resending the message in case some service g= oes down?
=C2=A0
Thanks again for the help here I highly appreciate it,
Florian
=C2=A0
=C2=A0
Gesendet:=C2=A0Sonntag, 11. Februar= 2018 um 03:15 Uhr
Von:=C2=A0"Maxime Ransan" <maxime.ransan@gmail.com>
An:=C2=A0"Kenneth Adam Miller" <kennethadammiller@gmail.com&g= t;
Cc:=C2=A0"Louis Roch=C3=A9" <mail@louisroche.net>, picflo_2@web.de, "caml users= " <caml-lis= t@inria.fr>
Betreff:=C2=A0Re: [Caml-list] Protobuf for ocaml
The difference between ppx_deriving_protobuf and ocaml-protoc is that = the former generates a protobuf schema from an OCaml type while the later g= enerates the OCaml type from a protobuf schema. They are both using the sam= e runtime library for the binary encoding.
=C2=A0
Although I have written ocaml-protoc as a personal project, it has bee= n used successfully in a professional context to interface with apache meso= s.
=C2=A0
=C2=A0
On Sat, Feb 10, 2018 at 8:10 PM Kenneth Adam Miller <kennethadammiller@gmail.= com> wrote:
The space complexity is ridiculous (at least X^2, possibly 2^n), it is= n't as convenient as any of the others in allowing you to derive your o= wn specs, it's horribly written code that uses ref and doesn't conf= orm to OCaml conventions, it caused a lot of crashing on our end, only work= s for a particular compile target until I went to update it, the Makefile i= s an awful unmaintainable and unreadable mess, the language it defines is u= nnecessary and it's hard to get anything to change.

We (me and some team mates) had this forced on us for the features we requi= red, which was to be able to get data in and out of ocaml to other language= s, and wanted to use it for a large project. It ended up causing a lot of u= nnecessary and unwanted slow down in development, both for our cases and fo= r CMU's BAP. They had the same problems, and everyone that has touched = it had to do unwanted work trying to get it to reliably do what it advertis= es.=C2=A0
=C2=A0
On Sat, Feb 10, 2018 at 7:43 PM, Louis Roch=C3= =A9 <mail= @louisroche.net> wrote:
Can you give more details p= lease ?
--f403045c91d4936be80564f10ab8--