Abstract:
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.