Reheated Curry: functional refactoring in action

Simon Thompson

Computing Laboratory, University of Kent, UK


Refactoring means redesigning your code without changing its effect. Functional programming languages like Haskell have a clean mathematical semantics which makes them ideally suited for program transformation and refactoring. In this two-part talk I will first give an introduction to modern functional programming in Haskell, followed by a discussion of the fundamentals of refactoring. The second part will demonstrate refactoring in action.