[racket] Strange behavior of web application , or may be not
This is not strange.
When you click "Create Something", the continuation is []
When you click "Start Again", the continuation is
(begin [] (error 'oops ...) (recur))
When you click "View", the value
(response/xexpr
`(html))
gets returned to the continuation, so you get an error, because begin
ignores the value and drops through to the error.
Jay
2011/6/27 Veer <diggerrrrr at gmail.com>:
> Hello,
>
> When I run this web application (given below) , I get strange behavior
> , don't know if
> this is correct behavior or not.
>
> Follow/click the link in sequence :
> 1. Create Something
> 2. Start again
> 3. View
>
> So , when I click "view" I get exception instead of blank page.
>
> code :
> #lang web-server/insta
> (define (start request)
> (do-1 request))
>
> (define (do-1 request)
> (define (resp make-url)
> (response/xexpr
> `(html
> (body (a ((href ,(make-url view))) "View")
> (br)
> (a ((href ,(make-url create-something))) "Create something")))))
>
> (define (create-something request)
> (recur))
>
> (define (view request)
> (response/xexpr
> `(html)))
>
> (send/suspend/dispatch resp))
>
>
> (define (recur)
> (do-something)
> (error 'oops "WHY ARE WE HERE?")
> (recur))
>
> (define (do-something)
> (define (resp make-url)
> (response/xexpr
> `(html
> (body (a ((href ,(make-url start))) "Start again")))))
> (send/suspend/dispatch resp))
>
>
> Thanks
> _________________________________________________
> For list-related administrative tasks:
> http://lists.racket-lang.org/listinfo/users
>
--
Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay
"The glory of God is Intelligence" - D&C 93