What is Bogre-Banana
Bogre-Banana is a 3D game engine for Haskell. It uses Haskell bindings to the OGRE 3D engine and a library called Reactive-Banana, to create a "Functional Reactive Programming" game engine. Bogre-Banana is designed to be concise and easy to use.
What is "Functional Reactive Programming"
Functional Reactive Programming (FRP) is a programming paradigm used widely with Functional languages to create interactive programs.
FRP Crash Course
Programming in FRP consists of creating a network of "Behavior"s and "Event"s (although Events are more like event streams). A Behavior represents something that changes through time. An Event represents discrete time specific events. The key difference between a Behavior and an Event is that a Behaviour has a value at all times, while an Event only occurs at specific instances of time.