Version française
Home     About     Download     Resources     Contact us    
Browse thread
Desktop GUI toolkits - current state of the art?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jeremy Yallop <yallop@g...>
Subject: Re: [Caml-list] Desktop GUI toolkits - current state of the art?
On 24 November 2010 21:37, Alain Frisch <alain.frisch@lexifi.com> wrote:
> Being able to write things like:
>
> lazy let rec button1 =
>  button ~click:(fun () -> button2 # disable) "Button1"
> and button2 =
>  button ~click:(fun () -> button1 # disable) "Button2"
> in
> ...
>
>
> As the lazy keyword suggests, we rely on lazy evaluation to evaluate such
> recursive definitions. The code above is equivalent to:
>
> let rec button1 =
>  lazy (button ~click:(fun () -> (Lazy.force button2) # disable) "Button1")
> and button2 =
>  lazy (button ~click:(fun () -> (Lazy.force button1) # disable) "Button2"
> in
> ...

This sounds very much like the presentation of value recursion in Don
Syme's ML 2005 paper:

   http://research.microsoft.com/apps/pubs/default.aspx?id=79951

Out of interest, is your extension based on Don's work?