From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 70CCBBBBB for ; Fri, 17 Mar 2006 11:07:34 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k2HA7Xi6006931 for ; Fri, 17 Mar 2006 11:07:33 +0100 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id LAA19519 for ; Fri, 17 Mar 2006 11:07:32 +0100 (MET) Received: from nproxy.gmail.com (nproxy.gmail.com [64.233.182.197]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k2HA7WvP006928 for ; Fri, 17 Mar 2006 11:07:32 +0100 Received: by nproxy.gmail.com with SMTP id m19so400216nfc for ; Fri, 17 Mar 2006 02:07:32 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:mime-version:content-type:content-transfer-encoding:content-disposition; b=cDs9JUzyWProZGAHsjHeCZp7Babr77M2n2+LT5mME98vxEA8zcNzaf6lU8IP5eP4UB3CL1CQ+UlH3ujOCLyi3O4HHeDwj/ye8pVcmvMcVHSnlzRU5tR4XLfwlqQMXbpwNMJPPvOmz/xVkz+bmug57ho0cWGPQFAJm2yk2f7rR0Y= Received: by 10.48.214.3 with SMTP id m3mr1314928nfg; Fri, 17 Mar 2006 02:07:32 -0800 (PST) Received: by 10.49.6.17 with HTTP; Fri, 17 Mar 2006 02:07:32 -0800 (PST) Message-ID: Date: Fri, 17 Mar 2006 19:07:32 +0900 From: "Eijiro Sumii" To: "Caml List" Subject: Stroustrup et al. propose to introduce "lambda closures" in C++ Cc: "Eijiro Sumii" MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline X-Miltered: at nez-perce with ID 441A8A65.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 441A8A64.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; eijiro:01 sumii:01 eijiro:01 sumii:01 lambda:01 lambda:01 semantics:01 extern:01 omitting:01 omitted:01 jeremiah:98 2006:98 unnamed:98 2.1:98 closures:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_BY_IP autolearn=disabled version=3.0.3 Hi, A friend of mine informed me of this report Lambda expressions and closures for C++ Jeremiah Willcock, Jaakko Jarvi, Doug Gregor, Bjarne Stroustrup, Andrew Lumsdaine 2006-02-26 http://public.research.att.com/~bs/N1968-lambda-expressions.pdf and I thought you might be interested. (I searched a little and didn't find any discussion on this report in this list.) A few highlights: ---------------------------------------------------------------------- We propose to extend the C++ language with lambda expressions, and define the semantics of these unnamed local functions via translation to closures: function objects implemented using local classes. ... void f() { int sum =3D 0; for each(a.begin(), a.end(), <>(int x) -> int extern(sum) {return sum +=3D x;}); } ... 2.1 Omitting the return type The return type of a lambda expression can be omitted if the body of the lambda function contains at most one return statement. ---------------------------------------------------------------------- Enjoy:-), Eijiro