annotate tests/div.ur @ 1893:9a1097954188

compileC: Link libraries in the right order This is needed, at least on recent Ubuntu, to fix this linker error when compiling any Ur/Web application: ld: /tmp/webapp.o: undefined reference to symbol 'uw_write' Signed-off-by: Anders Kaseorg <andersk@mit.edu> --- src/compiler.sml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
author Anders Kaseorg <andersk@mit.edu>
date Thu, 21 Nov 2013 14:32:11 -0500
parents 15e0c935c91b
children
rev   line source
adam@1619 1 functor Make(M : sig
adam@1619 2 type t
adam@1619 3 val read_t : read t
adam@1619 4 val show_t : show t
adam@1619 5 val num_t : num t
adam@1619 6 end) = struct
adam@1619 7 fun calculate (n1, n2) = return <xml><body>
adam@1619 8 {[readError n1 / readError n2 : M.t]}<br/>
adam@1619 9 {[readError n1 % readError n2 : M.t]}<br/>
adam@1619 10 </body></xml>
adam@1619 11
adam@1619 12 fun main () =
adam@1619 13 s1 <- source "";
adam@1619 14 s2 <- source "";
adam@1619 15 s3 <- source "";
adam@1619 16 s4 <- source "";
adam@1619 17 return <xml><body>
adam@1619 18 <h1>Client-side</h1>
adam@1619 19
adam@1619 20 <ctextbox source={s1}/> / <ctextbox source={s2}/>
adam@1619 21 <button value="=" onclick={n1 <- get s1;
adam@1619 22 n2 <- get s2;
adam@1619 23 set s3 (show (readError n1 / readError n2 : M.t));
adam@1619 24 set s4 (show (readError n1 % readError n2 : M.t))}/>
adam@1619 25 <dyn signal={n <- signal s3; return (txt n)}/>,
adam@1619 26 <dyn signal={n <- signal s4; return (txt n)}/>
adam@1619 27
adam@1619 28 <h1>Server-side</h1>
adam@1619 29
adam@1619 30 <form>
adam@1619 31 <textbox{#1}/> / <textbox{#2}/>
adam@1619 32 <submit value="=" action={calculate}/>
adam@1619 33 </form>
adam@1619 34 </body></xml>
adam@1619 35 end
adam@1619 36
adam@1619 37 structure Int = Make(struct type t = int end)
adam@1619 38 structure Float = Make(struct type t = float end)
adam@1619 39
adam@1619 40 fun main () : transaction page = return <xml><body>
adam@1619 41 <li><a link={Int.main ()}>Int</a></li>
adam@1619 42 <li><a link={Float.main ()}>Float</a></li>
adam@1619 43 </body></xml>