From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id TAA16915; Mon, 11 Jun 2001 19:56:56 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id TAA16620 for caml-list@pauillac.inria.fr; Mon, 11 Jun 2001 19:56:56 +0200 (MET DST) 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 PAA11891 for ; Mon, 11 Jun 2001 15:03:13 +0200 (MET DST) Received: from sarg.Ryerson.CA (sarg.ryerson.ca [141.117.18.117]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f5BD3Cv14783 for ; Mon, 11 Jun 2001 15:03:12 +0200 (MET DST) Received: from sarg.Ryerson.CA (IDENT:dmason@localhost [127.0.0.1]) by sarg.Ryerson.CA (8.9.3/8.9.3) with ESMTP id JAA14369; Mon, 11 Jun 2001 09:03:11 -0400 Message-Id: <200106111303.JAA14369@sarg.Ryerson.CA> To: "David McClain" cc: caml-list@inria.fr Subject: Re: [Caml-list] Evaluation Order In-reply-to: Your message of "Sat, 09 Jun 2001 19:25:01 PDT." <000e01c0f154$8e803e50$210148bf@dylan> Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Date: Mon, 11 Jun 2001 09:03:11 -0400 From: Dave Mason Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk >>>>> On Sat, 9 Jun 2001 19:25:01 -0700, "David McClain" said: > I had just thought of a similar solution myself, but I wouldn't be > so strict as to disallow any use in an expression. Rather, as long > as only one such function call exists in any one expression it would > be okay. That would allow things like > let ans = prev_ans + process_tail() in .... Yes. > It does sound like an easy solution, so knowing myself as I do, I am > wondering what I don't understand about the details... If it were so > easy, then why hasn't it been done yet? I think the answer is that the ``effect''ness isn't simply captured in the type. So the current type-inference engine would not be able to do it. It would require a bit of ad-hocery in the compiler. That doesn't mean that it's unsound, just that the existing compiler mechanisms couldn't do it. ../Dave ------------------- Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr