From fc1611149a6b6a4a56ae974152f16fb88ae89a6e Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Tue, 10 Mar 2009 17:29:03 -0400 Subject: Noisy demo --- demo/noisy.ur | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 demo/noisy.ur (limited to 'demo/noisy.ur') diff --git a/demo/noisy.ur b/demo/noisy.ur new file mode 100644 index 00000000..118af737 --- /dev/null +++ b/demo/noisy.ur @@ -0,0 +1,42 @@ +datatype list t = Nil | Cons of t * list t + +table t : { Id : int, A : string } + +fun add id s = + dml (INSERT INTO t (Id, A) VALUES ({[id]}, {[s]})) + +fun del id = + dml (DELETE FROM t WHERE t.Id = {[id]}) + +fun lookup id = + ro <- oneOrNoRows (SELECT t.A FROM t WHERE t.Id = {[id]}); + case ro of + None => return None + | Some r => return (Some r.T.A) + +fun check ls = + case ls of + Nil => return () + | Cons (id, ls') => + ao <- lookup id; + alert (case ao of + None => "Nada" + | Some a => a); + check ls' + +fun main () = + idAdd <- source ""; + aAdd <- source ""; + + idDel <- source ""; + + return +