
Henrik Nilsson wrote:
Hi,
Thoughts, people?
Functional Reactive Programming (FRP) tends to, in principle, work pretty well for this kind of application.
So I keep hearing. Unfortunately, discovering what FRP actually *means* is more or less impossible. I can't find a precise definition of the term anywhere. There are a small handful of libraries which claim to "implement it", and their documentation generally isn't especially helpful. Too many trees for me to actually see the wood - i.e., what it's doing and why that's helpful.
The page you referred to didn't seem to consider FRP?
There's a tiny footnote at the end muttering something about "next I need to figure out how FRP fits into the picture", but that's it.
Don't know if FRP would address all of your concerns.
The guy has written a number of posts on the topic, and one of his criticisms is that "FRP is supposed to 'fix' this, but every FRP demo is bouncing balls or asteroids or something equally trivial". I don't know if he wrote that before Frag - isn't that FRP?
But as to collisions, we can observe that this involves two or more entities and is, from the perspective of each entity, something external. Thus I don't think it's unreasonable that code handling collision detection is done "somewhere else", meaning outside the code describing the game entities themselves.
A reasonably argument...
As to how to respond to collisions, that can be a great deal trickier.
Is that not always the way? ;-)