[plt-scheme] FrTime implementation

From: Gregory Cooper (greg at cs.brown.edu)
Date: Mon Dec 3 11:28:35 EST 2007

Hi Dave,

I'd be very interested to see this project succeed, and I'll be more
than happy to help you understand anything you want to know about the
FrTime implementation.

I did some work a few months ago to try and optimize the animation
library, so it's probably a bit obfuscated now, but it sounds like you
understand essentially what you'd need to do.  You can use the
"lift-strict" function (provided by lang-ext.ss) to lift a procedure.
If you pass the resulting procedure any time-varying arguments, it
will be re-evaluated every time any of the arguments change.  There is
also a custom "provide" macro in mzscheme-core.ss, which makes it easy
to provide a lifted version of any procedure(s) defined in the module.

If you want to talk in more detail about the interface you're looking
to define and how best to use FrTime, feel free to contact me

Best regards,

On 12/3/07, Dave Griffiths <dave at pawfal.org> wrote:
> Hi all,
> So I've got round to seriously looking at implementing a 3D graphics
> backend to FrTime via fluxus. I've been poking around the source
> (particually animation.ss) but some (actually rather a lot) of the finer
> points are a bit unclear to me at the moment.
> Firstly, I'm just looking at where to start. If I want to use FrTime with
> my procedures, I assume I have to provide lifted forms of them to work
> with behaviors (or rather, an interface which is suitable for lifting).
> It seems like the sane approach is to write a high level interface on top
> of the existing fluxus one (which is a (quite large) mix of scheme and
> binary extension procedures).
> Am I thinking along the right lines? I'm really excited by the
> possibilities of FrTime, but also very aware I have a lot to learn :)
> cheers,
> dave
> http://www.pawfal.org/dave/
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Posted on the users mailing list.