Conal Elliott wrote:
On Nov 21, 2007 3:49 AM, Laurent Deniau <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

 > Peter Verswyvelen wrote:
 > > Conal Elliott wrote:
> >> Moreover, functional programming makes it easy to have much more state
 > >> than imperative programming, namely state over *continuous* time.  The
 > >> temporally discrete time imposed by the imperative model is pretty
> >> puny in comparison. Continuous (or "resolution-independent") time has
 > >> the same advantages as continuous space: resource-adaptive, scalable,
 > >> transformable.
> > Yes, that's true, but isn't that also the problem with FRP? I mean, most > > of the papers I'm reading about (A)FRP indicate that no matter how nice
 > > it is to have the continuous time model

 > I agree with Conal, it's not a continuous time model but a
 > resolution-independent time model.

What do mean by resolution-independent vs continuous?

I mean time may or may not be part or the model in FRP.

I meant them more-or-less synonymously. Semantically, there's no notion of resolution. When it's time to introduce a resolution for discrete rendering, there's no resolution imposed by the model.

Right. This is why I do not see the relation with the number of bits in a float. Time could be represented by states, in the sens of a state machine with asynchronous events.

 >                                     The reason it that Arrows (like
 > Monads) encapsulate the sequence of transitions.  Unless the time is a
 > parameter of the transition, it is independent of the time (resolution),
 > but still captures its ordered nature.

I'm confused again. I don't think of Arrow as implying transitions at all.

I call a transition the operator >>= for Monad, and arr for Arrow. I was maybe not clear in this point. The correct wording might be a computation.

 > > to get fine grained control
 > > over execution times and resources, one needs to fall back to the
 > > discrete delta-time approach?

 > If you need synchronization, yes.

Why?  What about synchronization implies discretness in the model?

Because it requires either specific states which are aware of each other (asynchronous events), or a known delta-time. How do you synchronize continuous events (I would says more continuous processes) ?

Regards,

ld.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to