Mercurial > urweb
view tests/termination.ur @ 2209:0ca11d57c175
Cleans up interface (it's now a command line option) and renames project to "sqlcache" in the all-one-word style. Still has issues to do with concurrency, retrying transactions, and foreign function calls that either rely on state or have side effects.
author | Ziv Scully <ziv@mit.edu> |
---|---|
date | Sat, 31 May 2014 03:08:16 -0400 |
parents | e0ed0d4dabc9 |
children |
line wrap: on
line source
datatype list a = Nil | Cons of a * list a fun isNil (t ::: Type) (ls : list t) : bool = case ls of Nil => True | Cons _ => False fun append (t ::: Type) (ls1 : list t) (ls2 : list t) : list t = case ls1 of Nil => ls2 | Cons (x, ls1') => Cons (x, append ls1' ls2) fun appendR (t ::: Type) (ls2 : list t) (ls1 : list t) : list t = case ls1 of Nil => ls2 | Cons (x, ls1') => Cons (x, appendR ls2 ls1') (*fun naughty (t ::: Type) (ls : list t) : list t = naughty ls*) fun append1 (t ::: Type) (ls1 : list t) (ls2 : list t) : list t = case ls1 of Nil => ls2 | Cons (x, ls1') => Cons (x, append2 ls2 ls1') and append2 (t ::: Type) (ls2 : list t) (ls1 : list t) : list t = case ls1 of Nil => ls2 | Cons (x, ls1') => Cons (x, append1 ls1' ls2)