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=0.0 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 1E867BBC1 for ; Wed, 13 Feb 2008 11:24:15 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAAIdUskfAXQImh2dsb2JhbACQPQEBAQgKKZxR X-IronPort-AV: E=Sophos;i="4.25,345,1199660400"; d="scan'208";a="9133922" Received: from discorde.inria.fr ([192.93.2.38]) by mail3-smtp-sop.national.inria.fr with ESMTP; 13 Feb 2008 11:24:14 +0100 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id m1DAODrh015249 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Wed, 13 Feb 2008 11:24:14 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ao8CANRTskdQRFuw/2dsb2JhbACtRQ X-IronPort-AV: E=Sophos;i="4.25,345,1199660400"; d="scan'208";a="7261625" Received: from furbychan.cocan.org ([80.68.91.176]) by mail2-smtp-roc.national.inria.fr with ESMTP; 13 Feb 2008 11:24:14 +0100 Received: from rich by furbychan.cocan.org with local (Exim 4.63) (envelope-from ) id 1JPEmj-0003Ry-IS for caml-list@inria.fr; Wed, 13 Feb 2008 10:24:13 +0000 Date: Wed, 13 Feb 2008 10:24:13 +0000 To: caml-list@inria.fr Subject: Re: [Caml-list] Calendar library: version 2.0 Message-ID: <20080213102413.GE16784@annexia.org> References: <20080212182041.GA18663@annexia.org> <20080212182611.GB18663@annexia.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.13 (2006-08-11) From: Richard Jones X-Miltered: at discorde with ID 47B2C54D.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; 0100,:01 signoles:01 vice-versa:01 ocaml:01 lablgtk:01 makefile:01 2.0:98 hacks:01 wrote:01 preprocessor:01 caml-list:01 api:02 api:02 module:03 library:03 On Wed, Feb 13, 2008 at 10:30:47AM +0100, Julien Signoles wrote: > > >OK, I take that back. Everything is now packed under CalendarLib.* > >which makes the issue of module names moot. > > Indeed it is one of my arguments for packing calendar. > > >Also it means nothing is backwards compatible :-( That could be a > >problem because it means I need to release two different versions of > >everything which uses the calendar library, but at least that's just a > >one-off event. > > You're obviously right: as calendar is now packed, everything which uses > calendar v1.* does not work anymore with calendar v2.* (and vice-versa). > > But the only change to do in your code is: add "open CalendarLib" at the > top of your files and all is fine because the API is backward compatible > inside the pack. It may be a tiny change, but it still needs two versions of the code to deal with. API changes aren't handled gracefully in OCaml. The same thing happens whenever the lablgtk API changes incompatibly - I end up using the C preprocessor or Makefile hacks. Rich. -- Richard Jones Red Hat