table listeners : { Ch : channel unit } fun ping () = queryI1 (SELECT * FROM listeners) (fn r => send r.Ch ()) fun main () = ch <- channel; dml (INSERT INTO listeners(Ch) VALUES ({[ch]})); count <- source 0; return