From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.2 required=5.0 tests=AWL,SPF_SOFTFAIL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 56CE1BB84 for ; Sat, 29 Nov 2008 23:47:19 +0100 (CET) X-IronPort-AV: E=Sophos;i="4.33,688,1220220000"; d="scan'208";a="31983837" Received: from concorde.inria.fr ([192.93.2.39]) by mail4-smtp-sop.national.inria.fr with ESMTP; 29 Nov 2008 23:47:19 +0100 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id mATMlI18000358 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Sat, 29 Nov 2008 23:47:18 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AscAAG9VMUlbeRrimWdsb2JhbACTSAEBAQEBCAsKBxG6A4J9 X-IronPort-AV: E=Sophos;i="4.33,688,1220220000"; d="scan'208";a="17772495" Received: from 2.mail-out.ovh.net ([91.121.26.226]) by mail2-smtp-roc.national.inria.fr with SMTP; 29 Nov 2008 23:47:18 +0100 Received: (qmail 28658 invoked by uid 503); 29 Nov 2008 23:26:21 -0000 Received: from b7.ovh.net (HELO mail181.ha.ovh.net) (213.186.33.57) by 2.mail-out.ovh.net with SMTP; 29 Nov 2008 23:26:21 -0000 Received: from b0.ovh.net (HELO queue-out) (213.186.33.50) by b0.ovh.net with SMTP; 29 Nov 2008 22:47:18 -0000 Received: from ip-183.net-82-216-1.versailles2.rev.numericable.fr (HELO ?192.168.0.12?) (forum%x9c.fr@82.216.1.183) by ns0.ovh.net with SMTP; 29 Nov 2008 22:47:16 -0000 Message-Id: From: "forum@x9c.fr" To: caml users In-Reply-To: <77D0D110-16C4-4EAF-A371-B782568860B0@inria.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Apple Message framework v929.2) Subject: Re: [Caml-list] OCaml 3.11.0 release candidate Date: Sat, 29 Nov 2008 23:47:16 +0100 References: <77D0D110-16C4-4EAF-A371-B782568860B0@inria.fr> X-Mailer: Apple Mail (2.929.2) X-Ovh-Tracer-Id: 14300054716844016416 X-Ovh-Remote: 82.216.1.183 (ip-183.net-82-216-1.versailles2.rev.numericable.fr) X-Ovh-Local: 213.186.33.20 (ns0.ovh.net) X-Miltered: at concorde with ID 4931C676.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 damien:01 ocaml:01 ocaml-:01 show-stopper:01 semantics:01 printexc:01 backtrace:01 printexc:01 backtrace:01 endline:01 endline:01 coherence:01 runtime:01 threads:01 Le 25 nov. 08 =E0 18:09, Damien Doligez a =E9crit : > Dear OCaml users, > > We are closing in on version 3.11.0. A Release Candidate is now =20 > available. > If there are no show-stoppers in this RC, then 3.11.0 will be =20 > officially > released next week. > > The release candidate is available here: > < http://caml.inria.fr/pub/distrib/ocaml-3.11/ > > (look for 3.11.0+rc1) > > As usual, we need a few brave souls to try and install it on their > favourite architecture and report the result to me. Definitely not a show-stopper but I am quite puzzled by the semantics of the newly-introduced "Printexc.get_backtrace" function (and hence also by "Printexc.print_backtrace"). Things are not pleasant to me regarding programs involving multiple =20 threads. By using "Printexc.get_backtrace" one may get an exception raised in another thread. In the following program, there is no guarantee that the two "print" expressions will output coherent results: the backtrace =20 printed may be the one of an exception thrown by another thread. try (...) with e -> print_endline (Printexc.to_string e); print_endline (Printexc.get_backtrace ()) Of course, coherence could be ensured by using a lock/mutex but I find =20= the solution heavyweight (and even in some cases tricky because of existing synchronization). Another option (involing changes to the OCaml runtime) would be to attach each backtrace to either its exception or to its =20 thread. Am I wrong ? Is the problem of no practical importance ? Any comment or correction is very welcome to enlighten me. Xavier Clerc