caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Daniel Bünzli" <daniel.buenzli@erratique.ch>
To: OCaml List <caml-list@inria.fr>
Subject: Re: [Caml-list] Re: Obj.magic and existential types.
Date: Sat, 20 Jun 2009 10:30:29 +0200	[thread overview]
Message-ID: <91F6B99D-3075-47A1-9257-0BD208C6D5D8@erratique.ch> (raw)
In-Reply-To: <c7e4e9f0906191147r70f72471vf81ad64468ba24ba@mail.gmail.com>


Le 19 juin 09 à 20:47, Jake Donham a écrit :

> You can also find FRP in froc (which is quite similar to React; the
> main difference is that it works in browsers):

Theoretically React may also work in browsers via o'browsers (http://ocsigen.org/obrowser 
) but I never tried.

Correct me if I'm wrong but from my perspective froc is different from  
react in that it leaks memory (see example below) and is less thread  
friendly (because it uses global datastructures).

Best,

Daniel

The following froc program consumes an unbounded amount of memory :

> open Froc_afp;;
>
> let n = return 1;;
>
> let () =
>   while true do
>     let m = n >>= fun x -> return (x + 1) in
>     print_int (read m);
>     Gc.full_major ();
>   done

The following equivalent react program consumes a bounded amount of  
memory :

> open React;;
>
> let n, _ = S.create 1
>
> let () =
>   while true do
>     let m = S.map (fun x -> x + 1) n in
>     print_int (S.value m);
>     Gc.full_major ();
>   done
>




  reply	other threads:[~2009-06-20  8:32 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-19 17:42 Guillaume Yziquel
2009-06-19 18:21 ` Daniel Bünzli
2009-06-19 18:30   ` Guillaume Yziquel
2009-06-19 18:37     ` Daniel Bünzli
2009-06-19 18:47   ` [Caml-list] " Jake Donham
2009-06-20  8:30     ` Daniel Bünzli [this message]
2009-06-21 18:08       ` Jake Donham
2009-06-21 18:39         ` Yaron Minsky
2009-06-22  0:03         ` Daniel Bünzli
2009-06-22  9:19           ` Benjamin Canou
2009-06-22 17:02           ` Jake Donham
2009-06-23  0:24             ` Daniel Bünzli
2009-06-23  0:34               ` Jake Donham
2009-06-23  2:22               ` Jake Donham

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=91F6B99D-3075-47A1-9257-0BD208C6D5D8@erratique.ch \
    --to=daniel.buenzli@erratique.ch \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).