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 p07Ir0ZI006632 for ; Fri, 7 Jan 2011 19:53:00 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuAAAOvuJk3RVdi2imdsb2JhbACkIggVAQEBCgkMBw8GIKQ+lwGFTASEZw X-IronPort-AV: E=Sophos;i="4.60,290,1291590000"; d="scan'208";a="84646571" Received: from mail-qy0-f182.google.com ([209.85.216.182]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-MD5; 07 Jan 2011 19:52:54 +0100 Received: by qyk36 with SMTP id 36so17754305qyk.6 for ; Fri, 07 Jan 2011 10:52:53 -0800 (PST) Received: by 10.229.213.146 with SMTP id gw18mr22789951qcb.211.1294426373088; Fri, 07 Jan 2011 10:52:53 -0800 (PST) Received: from sergyar.local (pool-96-250-21-43.nycmny.east.verizon.net [96.250.21.43]) by mx.google.com with ESMTPS id l12sm15325130qcu.19.2011.01.07.10.52.51 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 07 Jan 2011 10:52:52 -0800 (PST) Date: Fri, 7 Jan 2011 13:52:50 -0500 (EST) From: Brian Hurt X-X-Sender: bhurt@sergyar To: =?ISO-8859-15?Q?Holger_Wei=DF?= cc: Caml List In-Reply-To: <20110107181157.GA16020852@CIS.FU-Berlin.DE> Message-ID: References: <699537.6718.qm@web111509.mail.gq1.yahoo.com> <20110107181157.GA16020852@CIS.FU-Berlin.DE> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323329-880215709-1294426372=:7793" Subject: Re: [Caml-list] Purity and lazyness This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-880215709-1294426372=:7793 Content-Type: TEXT/PLAIN; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 8BIT On Fri, 7 Jan 2011, Holger Weiß wrote: > Simon Peyton-Jones argues like this: > > | Because Haskell is lazy it meant that we were much more consistent about > | keeping the language pure. You could have a pure, strict, call by value > | language, but no one has managed to do that because the moment you have > | a strict call by value language, the temptation to add impurities (side > | effects) is overwhelming. So "laziness kept us pure" is the slogan! > > [ http://www.techworld.com.au/article/261007/a-z_programming_languages_haskell/?pp=7 ] > Unless there is some other driver to keep things pure even while being strict. And I would argue there is- concurrency. Concurrency has a lot of similarities with laziness, in that the ordering of computations can be (and often is) undefined, with all the fun that entails. Haskell is really good at multithreaded because it has already "paid the price" of dealing with asynchronous computations. Brian --8323329-880215709-1294426372=:7793--