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 RAA23907; Wed, 19 Nov 2003 17:37:12 +0100 (MET) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 RAA23787 for ; Wed, 19 Nov 2003 17:37:11 +0100 (MET) Received: from herd.plethora.net (herd.plethora.net [205.166.146.1]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id hAJGbA124145 for ; Wed, 19 Nov 2003 17:37:10 +0100 (MET) Received: from bhurt.plethora.net (bhurt.plethora.net [205.166.146.49]) by herd.plethora.net (8.11.6/8.10.1) with ESMTP id hAJGb4C13506; Wed, 19 Nov 2003 10:37:04 -0600 (CST) Date: Wed, 19 Nov 2003 11:36:36 -0600 (CST) From: Brian Hurt X-X-Sender: bhurt@localhost.localdomain To: skaller cc: Ville-Pertti Keinonen , Caml Mailing List Subject: Re: [Caml-list] GC and file descriptors In-Reply-To: <1069246955.23700.53.camel@pelican> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 haskell:01 hurts:01 ocaml:01 ocaml:01 descriptors:01 nov:01 lazy:02 lazy:02 penalty:02 complex:03 wrote:03 wrote:03 algorithm:03 data:03 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On 20 Nov 2003, skaller wrote: > On Wed, 2003-11-19 at 09:28, Brian Hurt wrote: > > Wandering into language advocacy here. > > > > > For any large, complex, data structure & algorithm heavy application, > > Ocaml is the best language I know of. It's not the best possible > > language (I can think of a number of improvements to Ocaml I'd like to > > see), but it's better for that purpose than any other language I know. > > What about Haskell? Doesn't lazy evaluation have a significant > advantage? > 1) Lazy evaluation comes with a performance penalty. 2) Lazy evaluation + imperitive programming == hard to track down bugs 3) While there are programs which will terminate with lazy evaluation that won't terminate with strict evalulation, such programs mainly appear only as counter examples. If I know that I'm in a strict evaluation language, I just don't do that ("Doctor- it hurts when I do this!" "Well, don't do that then!"). -- "Usenet is like a herd of performing elephants with diarrhea -- massive, difficult to redirect, awe-inspiring, entertaining, and a source of mind-boggling amounts of excrement when you least expect it." - Gene Spafford Brian ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners