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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 7845BDC95 for ; Fri, 2 Sep 2005 10:37:52 +0200 (CEST) Received: from smtp10.wanadoo.fr (smtp10.wanadoo.fr [193.252.22.21]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j81GYKX6017306 for ; Thu, 1 Sep 2005 18:34:20 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf1007.wanadoo.fr (SMTP Server) with ESMTP id 8D9BB2800096 for ; Thu, 1 Sep 2005 18:34:20 +0200 (CEST) Received: from oemcomputer (Mix-Lyon-302-3-187.w193-248.abo.wanadoo.fr [193.248.230.187]) by mwinf1007.wanadoo.fr (SMTP Server) with SMTP id B9D712800183 for ; Thu, 1 Sep 2005 18:34:19 +0200 (CEST) X-ME-UUID: 20050901163419761.B9D712800183@mwinf1007.wanadoo.fr Message-ID: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> From: "Damien Guichard" To: "caml-list" Subject: [Caml-list] The Caml morale crasher #1 Date: Thu, 1 Sep 2005 18:32:29 +0200 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_007C_01C5AF23.82868FA0" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 X-Miltered: at concorde with ID 43172D8C.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; damien:01 caml-list:01 ocaml:01 lambdas:01 damien:01 ocaml:01 lambdas:01 caml:02 arial:96 arial:96 smalltalk:03 smalltalk:03 translation:07 translation:07 similar:10 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: ** X-Spam-Status: No, score=2.2 required=5.0 tests=DNS_FROM_RFC_ABUSE, DNS_FROM_RFC_POST,DNS_FROM_RFC_WHOIS,HTML_MESSAGE autolearn=disabled version=3.0.3 C'est un message de format MIME en plusieurs parties. ------=_NextPart_000_007C_01C5AF23.82868FA0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi all, Do you remember the Smalltalk "morale crasher #1" ? http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.html A similar story happened to me. When annoucing an OCaml project on a public forum i have been advised to = renunce lambdas because it would impede translation to "a less obscure, = more popular language". - damien my lego web page: http://perso.wanadoo.fr/alphablock/ ------=_NextPart_000_007C_01C5AF23.82868FA0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi all,
 
Do you remember the Smalltalk "morale = crasher #1"=20 ?
 
http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.= html
 
A similar story happened to = me.
 
When annoucing an OCaml project on a = public forum i=20 have been advised to renunce lambdas because it would impede = translation to=20 "a less obscure, more popular language".
 
- damien

my lego web page: http://perso.wanadoo.fr/alph= ablock/
------=_NextPart_000_007C_01C5AF23.82868FA0-- 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id A1526BDDB for ; Sat, 3 Sep 2005 08:07:24 +0200 (CEST) Received: from smtp2.syd.swiftdsl.com.au ([218.214.225.98]) by concorde.inria.fr (8.13.0/8.13.0) with SMTP id j8367LLV005520 for ; Sat, 3 Sep 2005 08:07:23 +0200 Received: (qmail 21756 invoked from network); 3 Sep 2005 06:07:07 -0000 Received: from unknown (HELO coltrane.mega-nerd.net) (218.214.64.136) by smtp2.syd.swiftdsl.com.au with SMTP; 3 Sep 2005 06:07:07 -0000 Received: from coltrane (localhost [127.0.0.1]) by coltrane.mega-nerd.net (Postfix) with SMTP id D630C7B91 for ; Sat, 3 Sep 2005 16:06:56 +1000 (EST) Date: Sat, 3 Sep 2005 16:06:56 +1000 From: Erik de Castro Lopo To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] The Caml morale crasher #1 Message-Id: <20050903160656.3d2c9ca8.ocaml-erikd@mega-nerd.com> In-Reply-To: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> Organization: Erik Conspiracy Secret Labs X-Mailer: Sylpheed version 2.0.0 (GTK+ 2.6.8; i486-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 43193D99.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 damien:01 ocaml:01 lambdas:01 nospam:98 wrote:01 caml:02 smalltalk:03 erik:04 erik:04 9000:94 translation:07 jump:08 disagrees:09 similar:10 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=FORGED_RCVD_HELO autolearn=disabled version=3.0.3 Damien Guichard wrote: > Hi all, > > Do you remember the Smalltalk "morale crasher #1" ? > > http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.html > > A similar story happened to me. > > When annoucing an OCaml project on a public forum i have been > advised to renunce lambdas because it would impede translation > to "a less obscure, more popular language". Since you are writing the code, you get to choose the language and the features you wish to use. You also get to tell anyone who disagrees to go jump :-). Erik -- +-----------------------------------------------------------+ Erik de Castro Lopo nospam@mega-nerd.com (Yes it's valid) +-----------------------------------------------------------+ "I ran it on my DeathStation 9000 and demons flew out of my nose." --Kaz 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id B32ACBDCB for ; Wed, 7 Sep 2005 13:58:58 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j87Bwwik015161 for ; Wed, 7 Sep 2005 13:58:58 +0200 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 NAA21363 for ; Wed, 7 Sep 2005 13:58:57 +0200 (MET DST) Received: from mz2.forethought.net (mzpi4.forethought.net [216.241.36.13]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j87BwuHD015245 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO) for ; Wed, 7 Sep 2005 13:58:57 +0200 Received: from [216.241.35.41] (helo=[10.0.0.2]) by mz2.forethought.net with esmtp (Exim 4.51) id 1ECyZq-0002ui-Mb for caml-list@inria.fr; Wed, 07 Sep 2005 05:58:54 -0600 Message-ID: <431ED5FD.5050100@havenrock.com> Date: Wed, 07 Sep 2005 05:58:53 -0600 From: Matt Gushee User-Agent: Mozilla Thunderbird 1.0 (X11/20050108) X-Accept-Language: en-us, en MIME-Version: 1.0 To: caml-list@inria.fr Subject: Re: [Caml-list] The Caml morale crasher #1 References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> In-Reply-To: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> X-Enigmail-Version: 0.86.1.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 431ED602.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 431ED600.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 damien:01 ocaml:01 lambdas:01 higher-order:01 ocaml's:01 conformity:01 ocaml:01 ...:98 ...:98 wrote:01 functions:01 caml:02 variant:02 types:02 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=none autolearn=disabled version=3.0.3 Damien Guichard wrote: > http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.html Unfortunately, I couldn't connect with this site, but I will venture a comment anyway. Since I know nothing about your project, I can only respond in the most general terms. > When annoucing an OCaml project on a public forum i have been advised to > renunce lambdas because it would impede translation to "a less obscure, > more popular language". And I imagine the same people who said that would also advise you not to use higher-order functions and variant types. Just sacrifice some of OCaml's most powerful features for the sake of compatibility ... or perhaps we should say (social) conformity. It might be a useful tactic in some specific cases, but as a general principle, if you're going to do that, why bother with OCaml at all? Let's assume you had good reasons for choosing OCaml (people who use non-mainstream languages usually do). The question then is whether there is any practical need for the members of that forum to accept your methods. If so, then try again to make your case ... I'm sure there are people here who can suggest some "talking points." Otherwise, well, innovation has always met with resistance, and probably always will. Have confidence in your choices and forge ahead. Or give up. It's your choice. Best of luck with your project. -- Matt Gushee Englewood, CO, USA 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 3CAEDBDE6 for ; Wed, 7 Sep 2005 20:10:09 +0200 (CEST) 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 j87IA83k021895 for ; Wed, 7 Sep 2005 20:10:08 +0200 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 UAA26399 for ; Wed, 7 Sep 2005 20:10:08 +0200 (MET DST) Received: from smtp9.wanadoo.fr (smtp9.wanadoo.fr [193.252.22.22]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j87IA76K021891 for ; Wed, 7 Sep 2005 20:10:07 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf0903.wanadoo.fr (SMTP Server) with ESMTP id 9AC1D1C0018B for ; Wed, 7 Sep 2005 20:10:07 +0200 (CEST) Received: from oemcomputer (Mix-Lyon-121-4-98.w80-12.abo.wanadoo.fr [80.12.49.98]) by mwinf0903.wanadoo.fr (SMTP Server) with SMTP id 9F5821C00177; Wed, 7 Sep 2005 20:09:56 +0200 (CEST) X-ME-UUID: 20050907180956652.9F5821C00177@mwinf0903.wanadoo.fr Message-ID: <005901c5b3d7$1a35c840$62310c50@oemcomputer> From: "Damien Guichard" To: "Matt Gushee" , References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> <431ED5FD.5050100@havenrock.com> Subject: Re: [Caml-list] The Caml morale crasher #1 Date: Wed, 7 Sep 2005 20:06:51 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 X-Miltered: at nez-perce with ID 431F2D00.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 431F2CFF.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; damien:01 caml-list:01 ocaml:01 lambdas:01 ocaml:01 milner:01 damien:01 caml-list:01 lambdas:01 higher-order:01 ocaml's:01 conformity:01 beginner's:01 beginners:01 bug: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=none autolearn=disabled version=3.0.3 Hi, Thanks for encouragements. Indeed OCaml is all about lambdas, any OCaml function is a named-lambda. OCaml without lambda-calculus is just impossible. Another adjective for OCaml was "esoteric" and another about Milner type system was "over the top feature". I think the only possible answer is to deliver, the functionality overcomes the resistance. The first language that delivers has great chances to become the standard. People that fear OCaml can deliver faster just prove OCaml is better. - damien ----- Original Message ----- From: "Matt Gushee" To: Sent: Wednesday, September 07, 2005 1:58 PM Subject: Re: [Caml-list] The Caml morale crasher #1 > Damien Guichard wrote: > > > http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.html > > Unfortunately, I couldn't connect with this site, but I will venture a > comment anyway. Since I know nothing about your project, I can only > respond in the most general terms. > > > When annoucing an OCaml project on a public forum i have been advised to > > renunce lambdas because it would impede translation to "a less obscure, > > more popular language". > > And I imagine the same people who said that would also advise you not to > use higher-order functions and variant types. Just sacrifice some of > OCaml's most powerful features for the sake of compatibility ... or > perhaps we should say (social) conformity. It might be a useful tactic > in some specific cases, but as a general principle, if you're going to > do that, why bother with OCaml at all? > > Let's assume you had good reasons for choosing OCaml (people who use > non-mainstream languages usually do). The question then is whether there > is any practical need for the members of that forum to accept your > methods. If so, then try again to make your case ... I'm sure there are > people here who can suggest some "talking points." Otherwise, well, > innovation has always met with resistance, and probably always will. > Have confidence in your choices and forge ahead. Or give up. It's your > choice. > > Best of luck with your project. > > -- > Matt Gushee > Englewood, CO, USA > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id BDC3FBDCB for ; Wed, 7 Sep 2005 20:13:53 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j87IDrfs027117 for ; Wed, 7 Sep 2005 20:13:53 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id UAA26063 for ; Wed, 7 Sep 2005 20:13:52 +0200 (MET DST) Received: from smtp9.wanadoo.fr (smtp9.wanadoo.fr [193.252.22.22]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j87IDqIJ027113 for ; Wed, 7 Sep 2005 20:13:52 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf0904.wanadoo.fr (SMTP Server) with ESMTP id 53ECA240019D for ; Wed, 7 Sep 2005 20:13:52 +0200 (CEST) Received: from oemcomputer (Mix-Lyon-121-4-98.w80-12.abo.wanadoo.fr [80.12.49.98]) by mwinf0904.wanadoo.fr (SMTP Server) with SMTP id 2B3C92400152; Wed, 7 Sep 2005 20:08:44 +0200 (CEST) X-ME-UUID: 20050907180844177.2B3C92400152@mwinf0904.wanadoo.fr Message-ID: <005801c5b3d6$eeff2900$62310c50@oemcomputer> From: "Damien Guichard" To: "Matt Gushee" , References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> <431ED5FD.5050100@havenrock.com> Subject: Re: [Caml-list] The Caml morale crasher #1 Date: Wed, 7 Sep 2005 20:06:51 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 X-Miltered: at concorde with ID 431F2DE1.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 431F2DE0.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; damien:01 caml-list:01 ocaml:01 lambdas:01 ocaml:01 milner:01 damien:01 caml-list:01 lambdas:01 higher-order:01 ocaml's:01 conformity:01 beginner's:01 beginners:01 bug: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=none autolearn=disabled version=3.0.3 Hi, Thanks for encouragements. Indeed OCaml is all about lambdas, any OCaml function is a named-lambda. OCaml without lambda-calculus is just impossible. Another adjective for OCaml was "esoteric" and another about Milner type system was "over the top feature". I think the only possible answer is to deliver, the functionality overcomes the resistance. The first language that delivers has great chances to become the standard. People that fear OCaml can deliver faster just prove OCaml is better. - damien ----- Original Message ----- From: "Matt Gushee" To: Sent: Wednesday, September 07, 2005 1:58 PM Subject: Re: [Caml-list] The Caml morale crasher #1 > Damien Guichard wrote: > > > http://www.bytesmiths.com/Publications/9701ArchitectsVersusCoders.html > > Unfortunately, I couldn't connect with this site, but I will venture a > comment anyway. Since I know nothing about your project, I can only > respond in the most general terms. > > > When annoucing an OCaml project on a public forum i have been advised to > > renunce lambdas because it would impede translation to "a less obscure, > > more popular language". > > And I imagine the same people who said that would also advise you not to > use higher-order functions and variant types. Just sacrifice some of > OCaml's most powerful features for the sake of compatibility ... or > perhaps we should say (social) conformity. It might be a useful tactic > in some specific cases, but as a general principle, if you're going to > do that, why bother with OCaml at all? > > Let's assume you had good reasons for choosing OCaml (people who use > non-mainstream languages usually do). The question then is whether there > is any practical need for the members of that forum to accept your > methods. If so, then try again to make your case ... I'm sure there are > people here who can suggest some "talking points." Otherwise, well, > innovation has always met with resistance, and probably always will. > Have confidence in your choices and forge ahead. Or give up. It's your > choice. > > Best of luck with your project. > > -- > Matt Gushee > Englewood, CO, USA > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > 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 597691F419 for ; Thu, 8 Sep 2005 14:47:45 +0200 (CEST) Received: from mail.enyo.de (mail.enyo.de [212.9.189.167]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j88Clixl003225 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Thu, 8 Sep 2005 14:47:45 +0200 Received: from deneb.vpn.enyo.de ([212.9.189.177] helo=deneb.enyo.de) by albireo.enyo.de with esmtp id 1EDLod-00035r-Kz; Thu, 08 Sep 2005 14:47:43 +0200 Received: from fw by deneb.enyo.de with local (Exim 4.52) id 1EDLnv-0004mm-Sp; Thu, 08 Sep 2005 14:46:59 +0200 From: Florian Weimer To: "Damien Guichard" Cc: "caml-list" Subject: Re: [Caml-list] The Caml morale crasher #1 References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> Date: Thu, 08 Sep 2005 14:46:59 +0200 In-Reply-To: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> (Damien Guichard's message of "Thu, 1 Sep 2005 18:32:29 +0200") Message-ID: <87acinvi9o.fsf@mid.deneb.enyo.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Miltered: at nez-perce with ID 432032F0.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; florian:01 caml-list:01 damien:01 ocaml:01 lambdas:01 gcc's:01 downward:98 closures:01 caml:02 languages:03 translation:07 language:15 project:17 would:17 obscure:20 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=none autolearn=disabled version=3.0.3 * Damien Guichard: > When annoucing an OCaml project on a public forum i have been > advised to renunce lambdas because it would impede translation to "a > less obscure, more popular language". Most languages offer strictly downward closures. Even GCC's C implementation has them. 8-) 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id F02F57D04 for ; Thu, 8 Sep 2005 14:55:33 +0200 (CEST) Received: from smtp15.wanadoo.fr (smtp15.wanadoo.fr [193.252.23.84]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j88CtXSe021942 for ; Thu, 8 Sep 2005 14:55:33 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf1503.wanadoo.fr (SMTP Server) with ESMTP id 75D797000085 for ; Thu, 8 Sep 2005 14:55:33 +0200 (CEST) Received: from wwinf1536 (wwinf1536 [172.22.146.110]) by mwinf1503.wanadoo.fr (SMTP Server) with ESMTP id 6A7087000081; Thu, 8 Sep 2005 14:55:33 +0200 (CEST) X-ME-UUID: 20050908125533436.6A7087000081@mwinf1503.wanadoo.fr Message-ID: <9504834.1126184133428.JavaMail.www@wwinf1536> From: yoann padioleau Reply-To: padator@wanadoo.fr To: Florian Weimer , Damien Guichard Subject: Re: [Caml-list] The Caml morale crasher #1 Cc: caml-list Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [193.54.76.165] X-Wum-Nature: EMAIL-NATURE X-WUM-FROM: |~| X-WUM-TO: |~||~| X-WUM-CC: |~| X-WUM-REPLYTO: |~| Date: Thu, 8 Sep 2005 14:55:33 +0200 (CEST) X-Miltered: at concorde with ID 432034C5.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 damien:01 ocaml:01 lambdas:01 gcc's:01 gcc:01 gcc:01 caml-list:01 beginner's:01 ocaml:01 beginners:01 bug:01 downward:98 closures:01 functions:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: ** X-Spam-Status: No, score=2.2 required=5.0 tests=DNS_FROM_RFC_ABUSE, DNS_FROM_RFC_POST,DNS_FROM_RFC_WHOIS autolearn=disabled version=3.0.3 > * Damien Guichard: > > > When annoucing an OCaml project on a public forum i have been > > advised to renunce lambdas because it would impede translation to "a > > less obscure, more popular language". > > Most languages offer strictly downward closures. Even GCC's C > implementation has them. 8-) Again I think I will disagree on the choice of your words :) GCC has nested functions. I think that we can't call that a closure; a closure is something that close his environment and store it somewhere. There is no such thing in GCC I think. > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > > 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 D5AE9BDCB for ; Thu, 8 Sep 2005 18:36:13 +0200 (CEST) Received: from ash25e.internode.on.net (ash25e.internode.on.net [203.16.214.182]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j88GaBp8030945 for ; Thu, 8 Sep 2005 18:36:13 +0200 Received: from rosella (ppp32-47.lns1.syd6.internode.on.net [59.167.32.47]) by ash25e.internode.on.net (8.12.9/8.12.6) with ESMTP id j88GZxwG030296; Fri, 9 Sep 2005 02:05:59 +0930 (CST) (envelope-from skaller@users.sourceforge.net) Subject: Re: [Caml-list] The Caml morale crasher #1 From: skaller To: padator@wanadoo.fr Cc: Florian Weimer , Damien Guichard , caml-list In-Reply-To: <9504834.1126184133428.JavaMail.www@wwinf1536> References: <9504834.1126184133428.JavaMail.www@wwinf1536> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-eeh/mC+W1uyDQDvFgQ/a" Date: Fri, 09 Sep 2005 02:35:59 +1000 Message-Id: <1126197359.19053.57.camel@rosella.wigram> Mime-Version: 1.0 X-Mailer: Evolution 2.2.1.1 X-Miltered: at nez-perce with ID 4320687B.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 damien:01 ocaml:01 lambdas:01 gcc's:01 gcc:01 gcc:01 stack:01 func:01 stack:01 func:01 opcode:01 pointer:01 pointers:01 downward:98 X-Attachments: type="application/pgp-signature" name="signature.asc" 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=none autolearn=disabled version=3.0.3 --=-eeh/mC+W1uyDQDvFgQ/a Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Thu, 2005-09-08 at 14:55 +0200, yoann padioleau wrote: > > * Damien Guichard: > >=20 > > > When annoucing an OCaml project on a public forum i have been > > > advised to renunce lambdas because it would impede translation to "a > > > less obscure, more popular language". > >=20 > > Most languages offer strictly downward closures. Even GCC's C > > implementation has them. 8-) >=20 > Again I think I will disagree on the choice of your words :) > GCC has nested functions. I think that we can't call that a closure; a cl= osure is something > that close his environment and store it somewhere. There is no such thing= in GCC I think. My understanding is: Gcc has first class closures like this stack picture: closure: CALL FUNC stack frame here FUNC: POP FP // FP points at the stack frame Closure's are created by pushing the function address plus a "CALL" opcode on to the stack, the SP is then a pointer to the closure. Execute permission is required for the stack. Memory management of the thunks, also called trampolines, is completely automatic. The closures are valid if, and only if, they're on the call stack, Damiens 'downward closures': this means you can pass them as arguments but not return them, like pointers to any other local variable in C. --=20 John Skaller --=-eeh/mC+W1uyDQDvFgQ/a Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) iD8DBQBDIGhtsRp8/9aGVGsRApbzAJoCouVlHyVxFDrHXM8JJMzaDXO2GQCgkaRj qjzn5SSV+IyUlRGzhCRHXCY= =ychU -----END PGP SIGNATURE----- --=-eeh/mC+W1uyDQDvFgQ/a-- 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 C568FBDE6 for ; Thu, 8 Sep 2005 18:45:08 +0200 (CEST) Received: from mail.davidb.org (adsl-64-172-240-129.dsl.sndg02.pacbell.net [64.172.240.129]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j88Gj6eu031699 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 8 Sep 2005 18:45:08 +0200 Received: from a64.davidb.org ([192.168.1.23]) by mail.davidb.org with esmtpa (Exim 4.50 #1 (Debian)) id 1EDPWL-0007cY-3r; Thu, 08 Sep 2005 09:45:05 -0700 Subject: Re: [Caml-list] The Caml morale crasher #1 From: David Brown To: padator@wanadoo.fr Cc: caml-list , Damien Guichard , Florian Weimer In-Reply-To: <9504834.1126184133428.JavaMail.www@wwinf1536> References: <9504834.1126184133428.JavaMail.www@wwinf1536> Content-Type: text/plain Date: Thu, 08 Sep 2005 09:44:53 -0700 Message-Id: <1126197893.3685.7.camel@a64.davidb.org> Mime-Version: 1.0 X-Mailer: Evolution 2.2.3 Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 43206A92.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 damien:01 ocaml:01 lambdas:01 gcc's:01 gcc:01 gcc:01 implements:01 stack:01 enclosing:01 implements:01 stack:01 pointer:01 downward:98 downward:98 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.9 required=5.0 tests=FORGED_RCVD_HELO,SPF_SOFTFAIL autolearn=disabled version=3.0.3 On Thu, 2005-09-08 at 14:55 +0200, yoann padioleau wrote: > > * Damien Guichard: > > > > > When annoucing an OCaml project on a public forum i have been > > > advised to renunce lambdas because it would impede translation to "a > > > less obscure, more popular language". > > > > Most languages offer strictly downward closures. Even GCC's C > > implementation has them. 8-) > > Again I think I will disagree on the choice of your words :) > GCC has nested functions. I think that we can't call that a closure; a closure is something > that close his environment and store it somewhere. There is no such thing in GCC I think. GCC definitely implements downward closures. You can take the address of nested functions, and as long as the stack frame is still valid, they have access to values defined in the enclosing function. GCC implements this by generating trampolines on the stack and passing the address of the newly generated code as the function pointer. It fails to work on platforms that have security features that prevent stack execution. Dave 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 44391BDCB for ; Thu, 8 Sep 2005 19:14:59 +0200 (CEST) Received: from mail.enyo.de (mail.enyo.de [212.9.189.167]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j88HEwQP001726 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Thu, 8 Sep 2005 19:14:59 +0200 Received: from deneb.vpn.enyo.de ([212.9.189.177] helo=deneb.enyo.de) by albireo.enyo.de with esmtp id 1EDPzA-00052R-BN; Thu, 08 Sep 2005 19:14:52 +0200 Received: from fw by deneb.enyo.de with local (Exim 4.52) id 1EDPyP-0005zQ-SY; Thu, 08 Sep 2005 19:14:05 +0200 From: Florian Weimer To: David Brown Cc: padator@wanadoo.fr, caml-list , Damien Guichard Subject: Re: [Caml-list] The Caml morale crasher #1 References: <9504834.1126184133428.JavaMail.www@wwinf1536> <1126197893.3685.7.camel@a64.davidb.org> Date: Thu, 08 Sep 2005 19:14:05 +0200 In-Reply-To: <1126197893.3685.7.camel@a64.davidb.org> (David Brown's message of "Thu, 08 Sep 2005 09:44:53 -0700") Message-ID: <87irxbqy76.fsf@mid.deneb.enyo.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Miltered: at nez-perce with ID 43207192.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; florian:01 caml-list:01 gcc:01 implements:01 stack:01 pointer:01 stack:01 gcc:01 passing:01 caml:02 generated:05 fails:06 platforms:08 function:08 generating:08 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=none autolearn=disabled version=3.0.3 * David Brown: > GCC implements this by generating trampolines on the stack and > passing the address of the newly generated code as the function > pointer. It fails to work on platforms that have security features > that prevent stack execution. GCC should generate code for the appropriate mprotect calls on these architectures, so it should work on them, too. 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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 3EF58BDCB for ; Sat, 10 Sep 2005 00:21:52 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j89MLp3q005151 for ; Sat, 10 Sep 2005 00:21:51 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id AAA28437 for ; Sat, 10 Sep 2005 00:21:50 +0200 (MET DST) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j89MLn2W005146 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Sat, 10 Sep 2005 00:21:50 +0200 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1EDrDE-0001rj-14 for caml-list@inria.fr; Sat, 10 Sep 2005 00:19:12 +0200 Received: from 67.71.33.77 ([67.71.33.77]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 10 Sep 2005 00:19:12 +0200 Received: from monnier by 67.71.33.77 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 10 Sep 2005 00:19:12 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: caml-list@inria.fr From: Stefan Monnier Subject: Re: The Caml morale crasher #1 Date: Fri, 09 Sep 2005 18:17:19 -0400 Message-ID: <87mzmlga5z.fsf-monnier+gmane.comp.lang.caml.inria@gnu.org> References: <007f01c5af12$c10db3e0$bbe6f8c1@oemcomputer> <431ED5FD.5050100@havenrock.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: 67.71.33.77 User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 Cancel-Lock: sha1:NUbFDY8E2siXGRKHqzcdfyBP+n8= Sender: news X-Miltered: at concorde with ID 43220AFF.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 43220AFD.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; umontreal:01 lambdas:01 translating:01 lambda:01 caml:02 translation:07 some:12 language:15 language:15 then:17 code:17 would:17 stefan:17 stefan:17 obscure:20 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.6 required=5.0 tests=RCVD_BY_IP,RCVD_NUMERIC_HELO autolearn=disabled version=3.0.3 >> renunce lambdas because it would impede translation to "a less obscure, >> more popular language". If you worry about translating your code into some other language in the future, then lambda is the least of your worries, Stefan