Go to content

The Structure of Programming Revolutions - by Noel Welsh

This talk was recorded at Scala Days New York, 2016. Follow along on Twitter @scaladays and on the website for more information http://scaladays.org/. Abstract: What does it mean to think like a functional programmer? Why is it so hard to adopt functional programming if you are steeped in OO? In this talk, I'll address these questions, using ideas from the philosophy of science. The talk will give new insight into the process of becoming productive in Scala and the mindset needed to aid this process. Using the framework of "The Structure of Scientific Revolutions", we can see programming as undergoing three revolutions: Structured programming, object-oriented programming, and now, functional programming. Each revolution brings with a new paradigm - basic assumptions and values that make moving across paradigms difficult to achieve. In this talk, I'll describe the paradigm of the functional programmer: What is valued and what is considered good code. I will contrast this to the paradigm of the object-oriented programmer and finally consider if it is possible to reconcile these two approaches to programming.

May 9, 2016