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 87EC47FEE7 for ; Wed, 26 Jul 2017 10:38:12 +0200 (CEST) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=philippe.veber@gmail.com; spf=Pass smtp.mailfrom=philippe.veber@gmail.com; spf=None smtp.helo=postmaster@mail-yw0-f171.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of philippe.veber@gmail.com) identity=pra; client-ip=209.85.161.171; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="philippe.veber@gmail.com"; x-sender="philippe.veber@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of philippe.veber@gmail.com designates 209.85.161.171 as permitted sender) identity=mailfrom; client-ip=209.85.161.171; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="philippe.veber@gmail.com"; x-sender="philippe.veber@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-yw0-f171.google.com) identity=helo; client-ip=209.85.161.171; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="philippe.veber@gmail.com"; x-sender="postmaster@mail-yw0-f171.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3A/9XRVhAeZu2vKCFGhxl0UyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPv4rsbcNUDSrc9gkEXOFd2CrakV26yO6+jJYi8p2d65qncMcZhBBVcuqP?= =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6?= =?us-ascii?q?JvjvGo7Vks+7y/2+94fdbghMhzexe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfO?= =?us-ascii?q?pWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnM?= =?us-ascii?q?VhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Xymp4aV2Rx/ykC?= =?us-ascii?q?oINTA5/mHZhMJzkaxVvg6uqgdlzILIeoyYLuZycr/fcN4cWGFPXtxRVytEAo6k?= =?us-ascii?q?dYUPD+sBPeJZr4nlv1sBswa1CgayC+z01DBInGL90Koi0+QhEAHG2A0gH8oWsH?= =?us-ascii?q?vKttn1KrkdXvurw6nS1jjDYPZW1i386IjMaBwuvfaMXbdpfMfX1EIhFBvFg02O?= =?us-ascii?q?pYD5Oz6ZzOcAvmiB4+Z9VO+jlnQrpxxzrzSywMonl5PHiZgPyl/e8CV02IY1Ks?= =?us-ascii?q?O8SE58edOkFYFftyCeN4dvQsIjTX1ktD80yrEbu5O3YTIGyJsgxx7YZPyHd5aH?= =?us-ascii?q?7gj/W+aWJDd0nHNleLShiBau6UWs1PHwW82u3FtJridJiMTAu3EQ2xDJ98SKSO?= =?us-ascii?q?Zx8l+k2TmV1gDT7u9EIVozlareM5Mh2r4wlpsXsUTCBi/2gFv5gLWIdko64een?= =?us-ascii?q?9f7nb67ppp+ZLYB0iwX+Pr4ylcy4BOQ0KhIOUHSD+eSgyL3j+lX0T6lQgf0zlq?= =?us-ascii?q?nVqZTaJcUApq6lGAJVyYYi6xOnDzi8ytgYnH8HLEhEeB2dlYTpNUvOc7jECqK0?= =?us-ascii?q?ilGo2CpwyurddunqC5DJa3zCi6vJfLBn6kcaxhBlnv5F4JcBMrEAJPPrQkK5it?= =?us-ascii?q?HSAwVxZxS0wuLmEM1wkJ0TU2+VKqCcOaLW91SP47R8cKG3eIYJtWOleLAe7Pn0?= =?us-ascii?q?gCphlA=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DXAgDeU3hZhquhVdFdhgIHhSKjbox3g?= =?us-ascii?q?gSFRwKDNwdCFQEBAQEBAQEBAQEBEgEBAQgLCwgoL4IzIoI6CgMDIx0BGx4DDAY?= =?us-ascii?q?IAQc3AgIiAREBBQEcBhuKDgEDFaVhP4wKggQFARyDCQWDYAoZJw1Wgy0BAQgCH?= =?us-ascii?q?gIGEoMWg02JQoNJgmEBBJ9bgWhAkXmSOkiTYBQfgRU1gSwyISR4hQyBdT42iTU?= =?us-ascii?q?BAQE?= X-IPAS-Result: =?us-ascii?q?A0DXAgDeU3hZhquhVdFdhgIHhSKjbox3ggSFRwKDNwdCFQE?= =?us-ascii?q?BAQEBAQEBAQEBEgEBAQgLCwgoL4IzIoI6CgMDIx0BGx4DDAYIAQc3AgIiAREBB?= =?us-ascii?q?QEcBhuKDgEDFaVhP4wKggQFARyDCQWDYAoZJw1Wgy0BAQgCHgIGEoMWg02JQoN?= =?us-ascii?q?JgmEBBJ9bgWhAkXmSOkiTYBQfgRU1gSwyISR4hQyBdT42iTUBAQE?= X-IronPort-AV: E=Sophos;i="5.40,414,1496095200"; d="scan'208,217";a="232829674" Received: from mail-yw0-f171.google.com ([209.85.161.171]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 26 Jul 2017 10:38:11 +0200 Received: by mail-yw0-f171.google.com with SMTP id u207so21844183ywc.3 for ; Wed, 26 Jul 2017 01:38:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=5KyePqxPdUYE8KzDvdXnNIXQfSgYrSnIIx/BN7ZJO3w=; b=Z5exCgMkbgAJ2ePuMXXpaqVN+6it/FA/iEKqgmiYg/qNM8+dJQctJcqir/DZ4CI4aU nByNt8D2H9bDgvGnPQhGfCtO1C58ZUkZZL8VCSIjtGAezrPObzAOMwWhx/+CghAaj6Rh FjcgfXXPJgB27mg1m7BJj5hJVtnFIsXG46B1vaM5jQV7e+6IDTEAX0SHK3efS+/QRpT8 6jdo5TJAmcnNW5moDHUFHcLvYorGRADqYx8OuENOlq+6uA/777HCFvzKzOgMHXkYhsXn PF3RlHsDykw1YX2m5/poXXnVbTN+ZPr8zxmdQuHIvmWSmCt/gjvTotFUR8thny7iFczj PHQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=5KyePqxPdUYE8KzDvdXnNIXQfSgYrSnIIx/BN7ZJO3w=; b=psUOSmlwXBBPlWho2dSoCCH9opz6lB3H7wSoBhsoBLaD1WOYuy1jx1Zzbezj1SUGzw 7i/fl838z2y+EpZEjDHnsz0py3oP/UrKj0+GgdjxerpyW6exa6HZUUIgqlJCfRWyJ2PB 6OmEfWk/TNyKFk6skjTMjfoBqMS3XaHcAlBihVZ8YFJxB8RlYyE9sFE6vz0VWAEPe6Z4 2uxTnWOzJ3Nj1X3SL/d75X3aUO8tQj9LbW7X2EaFOww6/20bsim+W9v2cPuxSL38cDAg jMtaiwqWKBLNRTYGy27ZFMzWXl3oLE9sFL33kxBoiSYc2utqQpr9vBh1/z6M7wU2ZXTJ LEWg== X-Gm-Message-State: AIVw112SgntSAjhvJPJ+nV9LVf5MGyags4N7yfTqKyttr0XFlJVwLmJm +KMfjBvuXky6PDvCMAlbL8QGhi3A0Q== X-Received: by 10.129.200.7 with SMTP id n7mr155328ywi.115.1501058289854; Wed, 26 Jul 2017 01:38:09 -0700 (PDT) MIME-Version: 1.0 Received: by 10.37.184.196 with HTTP; Wed, 26 Jul 2017 01:38:09 -0700 (PDT) Received: by 10.37.184.196 with HTTP; Wed, 26 Jul 2017 01:38:09 -0700 (PDT) In-Reply-To: References: From: Philippe Veber Date: Wed, 26 Jul 2017 10:38:09 +0200 Message-ID: To: caml users Content-Type: multipart/alternative; boundary="089e0821eb4027759c0555345e32" X-Validation-by: philippe.veber@gmail.com Subject: [Caml-list] Sexplib and js_of_ocaml --089e0821eb4027759c0555345e32 Content-Type: text/plain; charset="UTF-8" Dear all, I recently noticed that sexplib parser fails with a "Too much recursion" exception when run in the browser on a very moderately sized string representation of an S-exp. I understand this is due to the absence of tail call optimization (although js_of_ocaml performs it in the case of a single recursive function). With this idea in mind, I suppose there is no simple workaround, so I wanted to ask if anyone knew a convenient replacement for serialization/deserialization that would work in the browser. Cheers, Philippe. --089e0821eb4027759c0555345e32 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear all,

I = recently noticed that sexplib parser fails with a "Too much recursion&= quot; exception when run in the browser on a very moderately sized string r= epresentation of an S-exp. I understand this is due to the absence of tail = call optimization (although js_of_ocaml performs it in the case of a single= recursive function). With this idea in mind, I suppose there is no simple = workaround, so I wanted to ask if anyone knew a convenient replacement for = serialization/deserialization that would work in the browser.=C2=A0

Cheers,
= Philippe.=C2=A0
--089e0821eb4027759c0555345e32--