I wrote a book about how to effectively combine procedural, OO, and Functional programming. The title is "Functional Design"