conal / talk-2015-essence-and-origins-of-frp

A keynote talk for LambdaJam 2015 (July 15--16)
410 stars 24 forks source link

VS type class #2

Open luke-clifton opened 6 years ago

luke-clifton commented 6 years ago

What is the VS type class constraint you mention in this talk?

integral :: VS a => Behavior a -> T -> Behavior a
conal commented 6 years ago

Suggestive of "vector space", since integral needs to scale and add. (Really, one needs some more structure to define integration.)

luke-clifton commented 6 years ago

Do you feel that the type of the elements of the vector spaces that are integrated should also be continuous and infinite, just as time is (in fact, should be the same type as time)?

If during the simulation, the time steps start to become smaller than the resolution of the type being integrated, it will stop making progress. The result suddenly changes depending on your sampling period, and worst of all, the accuracy suddenly get's worse as you increase the number of sampling points. In vector graphics, you expect it to just keep getting better as you sample more often!

conal commented 6 years ago

I don't know how integration over time can be meaningful without time deltas being the scalar field associated with the vector spaces being integrated, as I think you're saying here.

By the "time steps" for "simulation", I can't tell whether you mean animation sampling---which is irrelevant to the meaning of FRP---or something about how integration is implemented, probably involving iterative numeric approximation. People often mistakenly conflate the two.