Functional reactive programming is a programming paradigm intended for reactive programming (asynchronous dataflow programming) using the building blocks of functional programming (e.g. place, reduce, filter). Functional reactive programming has been used for programming graphical user interfaces, robotics, and also music, aiming to be able to simplify these complications by explicitly modeling time.