From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id q0KClCua004690 for ; Fri, 20 Jan 2012 13:47:12 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ar0CAHFhGU8machwl2dsb2JhbABDnUOINgGHfioBAQEBAQgWBzmBcgEBAQMBEgITGQEBLAsBBAsLBAcaISISAQUBChIGExIQh1oInAkKijiEIQGOJQeDfogogmCFYIxdjhA9glCBTA X-IronPort-AV: E=Sophos;i="4.71,541,1320620400"; d="scan'208";a="128227141" Received: from mx1.janestreet.com (HELO nyc-dmz-mxout1.janestreet.com) ([38.105.200.112]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 20 Jan 2012 13:47:06 +0100 Received: from nyc-qsv-mail1.delacy.com ([172.25.22.57]) by nyc-dmz-mxout1.janestreet.com with esmtp (Exim 4.76) (envelope-from ) id 1RoDry-0000TX-JL for caml-list@inria.fr; Fri, 20 Jan 2012 07:47:03 -0500 Received: from nyc-dmz-mxgoog1.delacy.com ([172.25.224.109] helo=mxgoog1.janestreet.com) by nyc-qsv-mail1.delacy.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1RoDry-0005aQ-Hu for caml-list@inria.fr; Fri, 20 Jan 2012 07:47:02 -0500 Received: from mail-yw0-f42.google.com ([209.85.213.42]) by mxgoog1.janestreet.com with esmtp (Exim 4.76) (envelope-from ) id 1RoDry-0002Qb-Fl for caml-list@inria.fr; Fri, 20 Jan 2012 07:47:02 -0500 Received: by yhnn55 with SMTP id n55so230579yhn.29 for ; Fri, 20 Jan 2012 04:47:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com; s=google; h=mime-version:x-originating-ip:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=Bfbn+LwjMYibDVwN9N1zMGRsooI/RXvixESungaUTUI=; b=GcctPCOw867u+/rKPQGWMTTIp/0u0XMV5i7D2EHYjvtJrWz4Y9uYrwbGy7ybbFvtkQ ZnpdVxbEm4bonytTgZf2KVt3NL+RokYBLQgRsf3U9NWrP2scTaEgdlJNEaIu0PYTbvSy ak3uEqAKXiLeGfY7Ev2+G3JbivQa9nojv7VG8= MIME-Version: 1.0 Received: by 10.236.155.65 with SMTP id i41mr44484528yhk.124.1327063622249; Fri, 20 Jan 2012 04:47:02 -0800 (PST) Received: by 10.147.136.17 with HTTP; Fri, 20 Jan 2012 04:47:02 -0800 (PST) X-Originating-IP: [67.247.17.113] In-Reply-To: <4F196092.7060707@dogguy.org> References: <4F196092.7060707@dogguy.org> Date: Fri, 20 Jan 2012 07:47:02 -0500 Message-ID: From: Yaron Minsky To: Mehdi Dogguy Cc: caml users Content-Type: multipart/alternative; boundary=002354435d04cc6b5c04b6f513ee Subject: Re: [Caml-list] Custom let bindings --002354435d04cc6b5c04b6f513ee Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable We use monads quite a bit, and the lack of a monadic syntax has been a long-running issue for us at Jane Street. I'd love to see some kind of monadic syntax land. I've seen the proposal, and it seems highly plausible. Also, having a special operator (let!) has been proposed as part of this I believe, and that seems like a good idea too. y On Fri, Jan 20, 2012 at 7:39 AM, Mehdi Dogguy wrote: > Hi, > > I noticed that Alain Frisch tried to add custom let bindings (see r11894 > and r11906) but it was reverted later on (see r11960) because no > consensus was reached (among OCaml Core team, I guess). AFAIR, I don't > remember seeing this on the caml-list. I'd personally vote for its > inclusion as I can see some uses for it. As any syntaxic sugar, it is > something we can live without but it could make things easier to read or > to express. > > FTR, the proposal is to add the following: > > =93let.e0 p =3D e1 in e2=94 will be expanded to =93e0 e1 (fun p ->= e2)=94. > > I'm not sure which part of the proposal was not agreed on (the syntaxic > details "let.e0" or the whole proposal). Any input from the core team wou= ld > be appreciated. > > What do others think about it? > > Regards, > > -- > Mehdi Dogguy > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa-roc.inria.fr/**wws/info/caml-list > Beginner's list: http://groups.yahoo.com/group/**ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-**bugs > > --002354435d04cc6b5c04b6f513ee Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable We use monads quite a bit, and the lack of a monadic syntax has been a long= -running issue for us at Jane Street. =A0I'd love to see some kind of m= onadic syntax land. =A0I've seen the proposal, and it seems highly plau= sible. =A0Also, having a special operator (let!) has been proposed as part = of this I believe, and that seems like a good idea too.

y

On Fri, Jan 20, 2012 at 7:39 AM, Me= hdi Dogguy <mehdi@= dogguy.org> wrote:
Hi,

I noticed that Alain Frisch tried to add custom let bindings (see r11894
and r11906) but it was reverted later on (see r11960) because no
consensus was reached (among OCaml Core team, I guess). AFAIR, I don't<= br> remember seeing this on the caml-list. I'd personally vote for its
inclusion as I can see some uses for it. As any syntaxic sugar, it is
something we can live without but it could make things easier to read or
to express.

FTR, the proposal is to add the following:

=A0 =A0 =A0 =A0=93let.e0 p =3D e1 in e2=94 will be expanded to =93e0 e1 (f= un p -> e2)=94.

I'm not sure which part of the proposal was not agreed on (the syntaxic= details "let.e0" or the whole proposal). Any input from the core= team would be appreciated.

What do others think about it?

Regards,

--
Mehdi Dogguy

--
Caml-list mailing list. =A0Subscription management and archives:
https://sympa-roc.inria.fr/wws/info/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners<= /a>
Bug reports:
http://caml.inria.fr/bin/caml-bugs


--002354435d04cc6b5c04b6f513ee--