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=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id A58E9BC6B for ; Thu, 11 Oct 2007 15:03:57 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ao8CACS8DUfUVZgL/2dsb2JhbAA X-IronPort-AV: E=Sophos;i="4.21,259,1188770400"; d="scan'208";a="2866980" Received: from hades.snarc.org ([212.85.152.11]) by mail2-smtp-roc.national.inria.fr with ESMTP; 11 Oct 2007 15:03:58 +0200 Received: by hades.snarc.org (Postfix, from userid 1000) id CA0191B482; Thu, 11 Oct 2007 15:03:54 +0200 (CEST) Date: Thu, 11 Oct 2007 15:03:54 +0200 To: Chris King Cc: Loup Vaillant , caml-list@yquem.inria.fr Subject: Re: [Caml-list] Re: Rope is the new string Message-ID: <20071011130354.GA7016@snarc.org> References: <1191879429.28011.27.camel@rosella.wigram> <1191886669.26491.29.camel@rosella.wigram> <20071009.122004.251675959.Christophe.Troestler+ocaml@umh.ac.be> <200710091440.48381.jon@ffconsultancy.com> <20071009155702.GB26282@snarc.org> <6f9f8f4a0710090942u2afe6c5erc2d5b11ecfff2253@mail.gmail.com> <20071009165520.GA27507@snarc.org> <6f9f8f4a0710091032r3dace80bi4f9b584ae5056675@mail.gmail.com> <20071009195119.GA29263@snarc.org> <875c7e070710091504j203ff78y8703fc5c22086671@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <875c7e070710091504j203ff78y8703fc5c22086671@mail.gmail.com> X-Warning: Email may contain unsmilyfied humor and/or satire. User-Agent: Mutt/1.5.16 (2007-06-11) From: tab@snarc.org (Vincent Hanquez) X-Spam: no; 0.00; camomile:01 camomile:01 wrote:01 wrote:01 caml-list:01 functions:01 strings:01 define:02 append:02 append:02 modules:02 string:02 string:02 module:03 handles:03 On Tue, Oct 09, 2007 at 06:04:57PM -0400, Chris King wrote: > On 10/9/07, Vincent Hanquez wrote: > > i want a UTF library to be able to do something like: > > > > type ustring = unicode_type * string > > of_string: string -> ustring (* raise if not unicode compliant *) > > to_string: ustring -> string > > append: ustring -> ustring -> ustring > > ...etc > > Have you checked out Camomile [1]? It handles such things quite nicely. The problem with camomile as it's actually so massive (27 modules) that it's scary ;) What i have in mind, in what should be the standard library, is a very simple module that define something like 20 functions at most, to have valid unicode strings type (of all common unicode types) and do common operations (append, find, ...) on it. -- Vincent Hanquez