Version française
Home     About     Download     Resources     Contact us    
Browse thread
Wanted: your feedback on the hierarchy of OCaml Batteries Included
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jon Harrop <jon@f...>
Subject: Re: [Caml-list] Wanted: your feedback on the hierarchy of OCaml Batteries Included
On Tuesday 18 November 2008 10:06:25 Richard Jones wrote:
> On Tue, Nov 18, 2008 at 10:56:18AM +0100, David Teller wrote:
> >  open System.IO;;
> >  open System.File;;
>
> Your biggest problem is using dot ('.') instead of underscore ('_').
> Using a dot means that the System namespace cannot be extended by
> external packages.  If you use an underscore then an external package
> can extend the namespace (eg. by providing System_Newpackage)

I don't follow. Can you not use "include" to extend an existing module:

# module Array = struct
    include Array
    let empty = [||]
  end;;
module Array :
  sig
    external length : 'a array -> int = "%array_length"
    ...
    val empty : 'a array
  end

-- 
Dr Jon Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/?e