view tests/channel.ur @ 1079:d069b193ed6b

Especialize uses a termination measure based on number of arguments introduced
author Adam Chlipala <adamc@hcoop.net>
date Tue, 15 Dec 2009 19:26:52 -0500
parents f73913d97a40
children
line wrap: on
line source
fun main () : transaction page =
    ch <- channel;
    let
        fun make () =
            subscribe ch;
            send ch "Hello world!"

        fun echo () =
            msg <- recv ch;
            alert(msg);
            echo ()

        fun onload () =
            make ();
            echo ()

        fun haveAnother () =
            send ch "Here's another."
    in
        return <xml><body onload={onload ()}>
          <button value="Another?" onclick={haveAnother ()}/>
        </body></xml>
    end