adam@1942: table t : { Ch : channel string }
adam@1942:
adam@1942: fun go () =
adam@1942: let
adam@1942: fun overwrite () =
adam@1942: dml (DELETE FROM t WHERE TRUE);
adam@1942: ch <- channel;
adam@1942: dml (INSERT INTO t (Ch) VALUES ({[ch]}));
adam@1942: return ch
adam@1942:
adam@1942: fun retrieve () =
adam@1942: oneRowE1 (SELECT (t.Ch) FROM t)
adam@1942:
adam@1942: fun transmit () =
adam@1942: ch <- retrieve ();
adam@1942: send ch "Test"
adam@1942:
adam@1942: fun listenOn ch =
adam@1942: s <- recv ch;
adam@1942: alert s
adam@1942: in
adam@1942: ch <- overwrite ();
adam@1942: return
adam@1942:
adam@1942: end
adam@1942:
adam@1942: fun main () = return
adam@1942:
adam@1942: