Manuel Chakravarty describes functional programming and blockchains as a match made in heaven, in his talk at Lambda World he explains why. As blockchains are in their infancy and not a lot of research into their associated programming language has been conducted Manuel's talk is pioneering the way for future discussions.
In this talk, I will explain the connection between blockchains and functional programming and argue that blockchains are a well-suited application area for functional programming techniques. I will illustrate this with evidence from the research-driven development of the Cardano blockchain and its contract programming platform, Plutus. Cardano and Plutus are implemented in Haskell and Rust, and the development process includes semi-formal specifications together with mechanised theorem proving to formalise key components.