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 8F56A7FFA2 for ; Tue, 8 Mar 2016 13:47:59 +0100 (CET) IronPort-PHdr: 9a23:cz5t/hJp8YVqhwdnM9mcpTZWNBhigK39O0sv0rFitYgUIv7xwZ3uMQTl6Ol3ixeRBMOAu60C27ad6fCocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TWM5DIfUi/yKRBybrysXNWC0ILni6voq9X6WEZhunmUWftKNhK4rAHc5IE9oLBJDeIP8CbPuWZCYO9MxGlldhq5lhf44dqsrtY4q3wD89pozcNLUL37cqIkVvQYSW1+ayFmrPHs4DvOVwaK53ZUfmQTkxxPS1zH4BD/X5H2minzsOdmxDOXMNGwRrcxD2eM9aBuHS7hkiABfxs49nrUm4QknadapgmitjR9yojZe52POfdiOKjaeIVJFiJ6Qs9NWnkZUcuHZIwVAr9EZL4Aog== Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=yminsky@janestreet.com; spf=Pass smtp.mailfrom=yminsky@janestreet.com; spf=None smtp.helo=postmaster@mxout1.mail.janestreet.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of yminsky@janestreet.com) identity=pra; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="yminsky@janestreet.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of yminsky@janestreet.com designates 38.105.200.112 as permitted sender) identity=mailfrom; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="yminsky@janestreet.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@mxout1.mail.janestreet.com) identity=helo; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="postmaster@mxout1.mail.janestreet.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AuAQBayd5WknDIaSZchAxtBrpTgWkXAQmFbgKBMwc5EwEBAQEBAQEBEAEBAQEHFglQQRIBgVmCFAEBAQMBEhEdAQE3AQQLCwsDCioCAiEBEgEFARwGEyKHbQMKCAMLoRuBMT4xik9nhEEBBIYVDYREAQEBAQEBAQEBAQEBAQEBAQEBAQEBDwIECoYNhD6CPR2CDYIbOBOBJ44piQaFY4YWgXWOe4cNhgsRHoEPIgOCMx6BbkyFEoRtAQEB X-IPAS-Result: A0AuAQBayd5WknDIaSZchAxtBrpTgWkXAQmFbgKBMwc5EwEBAQEBAQEBEAEBAQEHFglQQRIBgVmCFAEBAQMBEhEdAQE3AQQLCwsDCioCAiEBEgEFARwGEyKHbQMKCAMLoRuBMT4xik9nhEEBBIYVDYREAQEBAQEBAQEBAQEBAQEBAQEBAQEBDwIECoYNhD6CPR2CDYIbOBOBJ44piQaFY4YWgXWOe4cNhgsRHoEPIgOCMx6BbkyFEoRtAQEB X-IronPort-AV: E=Sophos;i="5.22,556,1449529200"; d="scan'208,217";a="206580526" Received: from mxout1.mail.janestreet.com ([38.105.200.112]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Mar 2016 13:47:58 +0100 Received: from tot-qpr-mailcore2.delacy.com ([172.27.56.106] helo=tot-qpr-mailcore2) by mxout1.mail.janestreet.com with esmtps (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.82) (envelope-from ) id 1adH3N-0004Xi-Kp for caml-list@inria.fr; Tue, 08 Mar 2016 07:47:57 -0500 X-JS-Flow: external Received: by tot-qpr-mailcore2 with JS-mailcore (0.1) (envelope-from ) id BW3sn8-AAAEq1-Lg; 2016-03-08 07:47:56.369090-05:00 Received: from mail-yw0-f179.google.com ([209.85.161.179]) by mxgoog2.mail.janestreet.com with esmtps (UNKNOWN:AES128-GCM-SHA256:128) (Exim 4.72) (envelope-from ) id 1adH3M-0000pw-6S for caml-list@inria.fr; Tue, 08 Mar 2016 07:47:56 -0500 Received: by mail-yw0-f179.google.com with SMTP id g127so10472361ywf.2 for ; Tue, 08 Mar 2016 04:47:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=3OjWlAW8IYtY5LHpwhVMRTv0CMdPDGqoj/Wc0SG1xLg=; b=WJXsI+KnBP0vuK3wJ4+05OyXCYyGQ2aVSJhsUkqhAhoNxZJGnuHbBPSTyd3u+5lkZ7 cGkFcgQznQDA7LdN5oFa2rwXSyh1irfN+IDZcEfQOBx01spCNctKeP5lToWl2CFFvo5l WOFh/m5tecrWJRNsJiOYQH85dJXH/JKx3gkfQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=3OjWlAW8IYtY5LHpwhVMRTv0CMdPDGqoj/Wc0SG1xLg=; b=UI9H50fXsVBmFwtQsgkwn12WhpnmwNnAP94586jP7REIKwjClzKbBzJJZFMUEHQG6z YopmPbpytD5w3Dnwlipyw2cbY+h51B8Q6dzaD9hcOfMbem0OfxgFMJ0LDCnrUdfXzdbi PTNluOaC5uPvO3IEI+vdpCWEsn804B224fTcSAfKI8B/prr78eiMcg8vhxY4H36T8xOh C7wfIB9kUa+BQQTj1oI8ZwTsm+Xpss1lI2622G9NalRSnORBJC7hNjWmazNlK+HBKJpq O/USvKiiwegTzNX8PT+Ph9ju9nDKZAQcOD3+hnwdrQVUlCJi9r/k0QEkYB5syrMZuqEc NRMg== X-Gm-Message-State: AD7BkJKbiG55lhsOVU/0CyOHaLWiapFr6jMp8T4zOfPNIGh/WHt2v86XbX1end5O7Zo4EuKaYXCoHoHyp/tNsVyq12RhLkfBC9qWL/TFy+ulsuA+MpnGxHDnhOWh40vMQVI7npkOxOhgqnP7snUt X-Received: by 10.13.225.211 with SMTP id k202mr14390514ywe.213.1457441275856; Tue, 08 Mar 2016 04:47:55 -0800 (PST) X-Received: by 10.13.225.211 with SMTP id k202mr14390505ywe.213.1457441275693; Tue, 08 Mar 2016 04:47:55 -0800 (PST) MIME-Version: 1.0 Received: by 10.13.226.65 with HTTP; Tue, 8 Mar 2016 04:47:36 -0800 (PST) In-Reply-To: References: <86h9gi9msc.fsf@gmail.com> <86d1r69ho4.fsf@gmail.com> <868u1ta25r.fsf@gmail.com> From:Yaron Minsky Date: Tue, 8 Mar 2016 07:47:36 -0500 Message-ID: To:Jeremie Dimino Cc:Malcolm Matalka , Yotam Barnoy , Jesper Louis Andersen , Ocaml Mailing List Content-Type: multipart/alternative; boundary=94eb2c06cc4c8511ba052d88fd36 X-JS-Processed-by: mailcore Subject: Re: [Caml-list] Question about Lwt/Async --94eb2c06cc4c8511ba052d88fd36 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Jeremie, other than having some different back-ends available (e.g., glib main loop), how different are the approaches to backend management between Async and Lwt? y On Tue, Mar 8, 2016 at 6:04 AM, Jeremie Dimino wrote: > On Tue, Mar 8, 2016 at 6:56 AM, Malcolm Matalka > wrote: > >> Yotam Barnoy writes: >> >> > Out of curiosity, what polling mechanism is available on the lwt side? >> >> I believe Lwt supports multiple event loops underneath, including libuv >> to get whatever polling the OS supports. > > > =E2=80=8BYes, by default Lwt has a backend using Unix.select, and a libev= one if > available at compile time (`opam install conf-libev`) > =E2=80=8B. At runtime Lwt will use the Unix.select backend by default, ex= cept if > it was configured to choose the libev one (the default on Linux) [1]. > > There is also a backend using the glib main loop, for GTK applications > > [1] > https://github.com/ocsigen/lwt/blob/master/_oasis#L88 > > -- > Jeremie > --94eb2c06cc4c8511ba052d88fd36 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Jeremie, other than having some different back-ends availa= ble (e.g., glib main loop), how different are the approaches to backend man= agement between Async and Lwt?

y

On Tue, Mar 8, 2016 at 6:04= AM, Jeremie Dimino <jdimino@janestreet.com> wrote:
=
<= span style=3D"font-family:arial,sans-serif">On Tue, Mar 8, 2016 at 6:56 AM,= Malcolm Matalka <mmatalka@= gmail.com> wrote= :
Yotam Barnoy <yotambarnoy@gmail.c= om> writes:

> Out of curiosity, what polling mechanism is available on the lwt side?=

I believe Lwt supports multiple event loops underneath, including li= buv
to get whatever polling the OS supports.

<= /div>
=E2=80=8BYes, by default Lwt has a backend usin= g Unix.select, and a libev one if
=C2=A0available at compile time (`opam install conf-libe= v`)
=E2=80=8B. At runtime Lwt will use the Unix.select bac= kend by default, except if it was configured to choose the libev one (the d= efault on Linux) [1].=C2=A0

= There is also a backend using the glib main loop, for GTK applications
<= div class=3D"gmail_default" style=3D"font-family:arial,helvetica,sans-serif= ;display:inline">

--
Jeremie

--94eb2c06cc4c8511ba052d88fd36--