[plt-scheme] Re: Status of FrTime

From: Noel Welsh (noelwelsh at yahoo.com)
Date: Tue Jul 19 09:54:21 EDT 2005

Hi Greg,

Good to know FrTime is still under development.  I had
assumed it was stopped (not sure why I assumed that).  With
the tech. report and the docs I think I'll get by.

> There may be some things I could do to improve the
> performance, but if 
> you're using a Mac, I'd be inclined to blame most of the
> problem on that. 

Any idea if it's just the GUI section, of the whole FrTime
framework?  I'll probably just write my GUI in MrEd. 
Inversion of control pains me, but I'll survive.  The web
stuff is (possibly) more of a concern, as I'll do most of
my development on a Powerbook.

Speaking of the web, how does FrTime play with the back
button?  Which is to say, if I save a continuation of a
FrTime program and then invoke the continuation after some
processing has occurred, will events unwind, or is there
state in the engine which could mess things up?  

Why would I want to use FrTime in a web program? 
Continuations give a control loop, but one still has to do
dispatch by hand.  E.g. from code I've written:

      ;; dispatch : request xml-element -> action
      (define (dispatch request config)
        (let ((bindings (request-bindings request)))
           ((exists-binding? 'add bindings)
            (show-new-search config))
           ((exists-binding? 'view bindings)
            (show-change-tab (extract-binding/single 'view
bindings) config))
           ((exists-binding? 'delete bindings)
            (show-delete-search bindings config))
           ((exists-binding? 'save bindings)
            (show-save-search bindings config))
           ((exists-binding? 'search bindings)
            (show-search bindings config))
            (generic-action config)))))

This is lame.  The dispatcher has to know about everything
that might occur in the application, and could easily get
unmaintainable.   send/suspend/dispatch is one solution. 
I'm interesting in investigating FRP as another.  In
particular I think the FRP code may be simpler as it will
be flater (fewer HOFs). 


Email: noelwelsh <at> yahoo <dot> com   noel <at> untyped <dot> com
AIM: noelhwelsh
Blogs: http://monospaced.blogspot.com/  http://www.untyped.com/untyping/

Start your day with Yahoo! - make it your home page 

Posted on the users mailing list.