Functional reactive programming in Java