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
Re: Okasaki's "Purely Functional Data Structures" translated to
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 1999-01-22 (17:51)
From: Pierpaolo Bernardi <bernardp@c...>
Subject: Re: Okasaki's "Purely Functional Data Structures" translated to

On Thu, 21 Jan 1999, Markus Mottl wrote:

> Although this implementation seems to be quite perfect, I have allowed
> myself to make some very small changes, so that it can be immediately
> used as a module and fits better to the way modules are implemented in
> the standard library.


> The following changes should be noted:

>   * The type of these lists is not "ralist" anymore in the module but
>     "t". This corresponds to the way this is handled in the standard
>     modules.


>   * A somewhat bigger change: the type of the list is not:
>       type 'a ralist = Nil | Root of int * 'a tree * 'a ralist
>     but now:
>       type 'a t    = (int * 'a tree) list
>     I think that new users will understand details of implementation
>     easier with this change. It also comes closer to Okasaki's version.

Okasaki in his paper on RALs presents both versions.  The one I
used is faster for Ocaml, so I suggest that you use the version I sent.
Users should use the book or the paper to understand details.

>   * The rest of the changes concern mainly layout (hardly noticable).

De gustibus...  8-)