summaryrefslogtreecommitdiff
path: root/demo/listFun.ur
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-11-20 11:34:36 -0500
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-11-20 11:34:36 -0500
commita01f4dd530689d29ac7518bb9a8d19b919ef76ac (patch)
treebe1fb9f820200f6d2620e1e597ff809b1f438d29 /demo/listFun.ur
parent7b09fa2aca2982038889f960e51d7b1e91a70991 (diff)
Some demo improvements
Diffstat (limited to 'demo/listFun.ur')
-rw-r--r--demo/listFun.ur31
1 files changed, 17 insertions, 14 deletions
diff --git a/demo/listFun.ur b/demo/listFun.ur
index c281a07d..d679c2fb 100644
--- a/demo/listFun.ur
+++ b/demo/listFun.ur
@@ -10,21 +10,24 @@ functor Make(M : sig
Nil => <xml>[]</xml>
| Cons (x, ls') => <xml>{[M.toString x]} :: {toXml ls'}</xml>
- fun console (ls : list M.t) = return <xml><body>
- Current list: {toXml ls}<br/>
- Reversed list: {toXml (rev ls)}<br/>
- Length: {[length ls]}<br/>
- <br/>
+ fun console (ls : list M.t) =
+ let
+ fun cons (r : {X : string}) =
+ case M.fromString r.X of
+ None => return <xml><body>Invalid string!</body></xml>
+ | Some v => console (Cons (v, ls))
+ in
+ return <xml><body>
+ Current list: {toXml ls}<br/>
+ Reversed list: {toXml (rev ls)}<br/>
+ Length: {[length ls]}<br/>
+ <br/>
- <form>
- Add element: <textbox{#X}/> <submit action={cons ls}/>
- </form>
- </body></xml>
-
- and cons (ls : list M.t) (r : {X : string}) =
- case M.fromString r.X of
- None => return <xml><body>Invalid string!</body></xml>
- | Some v => console (Cons (v, ls))
+ <form>
+ Add element: <textbox{#X}/> <submit action={cons}/>
+ </form>
+ </body></xml>
+ end
fun main () = console Nil
end