Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[OSR] Exceptionless error management
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2008-02-05 (14:13)
From: Jon Harrop <jon@f...>
Subject: Re: [Caml-list] [OSR] Exceptionless error management
On Tuesday 05 February 2008 11:06:41 Vincent Hanquez wrote:
> This is not "forking", for me that's patching.
> We _can_ provide the same interface+improvements (no breaking of
> previous programs) easily _without_ forking with minimal intrusion as a
> patchqueue on top of ocaml stdlib. the compiler might be forbidden
> fruit (license, INRIA expertise, etc) and that's probably a bad idea to
> fork it anyway, but stdlib should be where we could add major improvement
> to the language (a rich and nice stdlib just like all other languages).
> Also a proposal that define exceptionless without having the core
> library like Hashtbl, Map, Set, List, conforms to this "standard" is
> just bound to failure. Either they are modified (bad idea for
> compability), Copied+forked into another module (nobody going to use it
> + you're forking some of the stdlib) or the proposal is moot.

Exactly. Whatever everyone wants to call it, the stdlib desperately needs 
improving and tacking on more third party libraries (ExtLib, AnnexLib, 
PagodaCore, Baird, ...) is not the way to do it.

I personally want to see lots of simple, minimal improvements to the stdlib 
but I'm afraid that lots of other people are going to want to push their 
untested Obj-riddled codebases into any improvement, which scares me.

> > Sure we can have monadic stuff, new types, new infrastructure etc. but I
> > try to design solely within the constraint of the ocaml system as it
> > stands because I know that's something has been there for more than 10
> > years and continues to be maintained.
> > Polymorphic variants have the advantage to
> > allow us to standardize across modules without needing changes to the
> > ocaml system.
> they might be standard in ocaml (as in available through the compiler),
> but not much library use them.

Jacques Garrigue's libraries (e.g. LablGL) do and they work very well.

This is one area where OCaml is much nicer than F# (inherited from .NET). For 
example, in F# you write CullFace.Both or ControlStyles.DoubleBuffer but in 
OCaml you just write `Both or `DoubleBuffer.

> people should have that in mind when trying to propose them as an OSR;
> lots of people are not confortable with them imo.

I would recommend avoiding recursive polymorphic types in library APIs but I 
have no problems with small, simple, non-recursive definitions like [ `Value 
of 'a | `Exception of 'b ].

Dr Jon D Harrop, Flying Frog Consultancy Ltd.