• Question: have you made any discoveries

    Asked by zacks to Phil on 15 Jun 2010 in Categories: .
    • Photo: Philip Wadler

      Philip Wadler answered on 15 Jun 2010:


      Every scientist makes discoveries.

      When you are designing programming languages, sometimes it is hard to tell if you are ‘discovering’ or ‘inventing’. I like it best when my inventions have a nice connection to mathematics—then it feels more like a discovery than an invention.

      Three of my favorites are called monads, type classes, and the dual calculus. In all three cases, I was only part of a chain—other people had started to develop the idea before me, and then I added something to it, and then other people carried it on further after me.

      I’m especially fond of the dual calculus, because I remember exactly when I discovered it. There was a paper on the subject that I had meant to read and I was in Japan and had to go on a long train ride. By the end of the train ride I had understood the idea and had a new way of writing it down, and that was the dual calculus. I was really pleased, because it related on old idea from logic to ways we execute programming languages.

Comments