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 QAA29372; Sat, 18 Jan 2003 16:14:37 +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 QAA29437 for ; Sat, 18 Jan 2003 16:14:36 +0100 (MET) Received: from ns.mccme.ru ([195.133.68.22]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h0IFEWv13131 for ; Sat, 18 Jan 2003 16:14:35 +0100 (MET) Received: from mccme.ru (potanin@mccme.ru [195.178.198.7]) by ns.mccme.ru (8.8.5/8.8.5) with SMTP id SAA24574 for ; Sat, 18 Jan 2003 18:00:20 +0300 Date: Sat, 18 Jan 2003 18:31:13 +0300 (MSK) From: Mike Potanin To: caml-list@inria.fr Subject: Re: [Caml-list] let rec In-Reply-To: <9D69A846-2ADD-11D7-AFEF-0003930FCE12@inria.fr> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Sat, 18 Jan 2003, Damien Doligez wrote: > On Thursday, January 16, 2003, at 03:38 PM, Mike Potanin wrote: > > > The similar problem arises in a case > > let ring l = let rec r = l@r in r > > OCaml type system can not understand that the design is safe. > > But it is not unconditionally safe. Its safety depends on how > you defined the @ function. O'Caml doesn't want to look at > the definition of @ because separate compilation is a very > important feature. If extend type model compiler can handle this case. The type of @ function may content information "this function is realy lazy for second argument". This don't handle all case recurcive data, but impotant case. Mercury language don't handle all "modes" too :-). > > -- Damien ------------------- 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