Talk: 15:00–15:45 (English)

Things We Never Told Anyone About Functional Programming

FP—what is it good for? The “P” is for “Programming”, the writing of programs. Judging from the papers and most books on functional programming, FP excels as a tool for writing short programs—up to a hundred lines maybe. We also know that there are large FP codebases at large companies, and folklore has it that this also works quite well. Yet there is precious little literature on how to go from a hundred lines to a million lines of functional code. This hinders FP adoption by not-(yet?)-practicioners, who ask questions like:

  • How do I find module boundaries?
  • How do I organize teams for functional projects?
  • How do I document my functional codebase?
  • How do I onboard newcomers?
  • What’s a good book on functional software architecture?
  • Is there a book or website of functional patterns?
  • What are the benefits of FP—really?
  • How does functional software development to qualities and requirements beyond functionality?

Successful practitioners rely on folklore and experience for the answers to these questions, but precious little is written down in findable places and accessible formats.

This talk is a call to action: We need to do a better job at outreach—find the gaps in our published knowledge, write down what’s undocument and—going to extremes—talk to other communities who know a thing or two about large-scale software development.

Mike Sperber

Fediverse: @sperbsen@discuss.systems

Mike Sperber is CEO of Active Group, a software consultancy in Tübingen, Germany that develops software for client projects using functional programming, and also the organizer of BOB. Mike has a long history of publishing on functional programming, including many research papers, and was the project editor for the R6RS standard for the Scheme programming language. He has also developed an introductory course in programming in use at several German universities, based on the PLT group’s Program by Design approach. He also co-authored (with Nicole Rauch and Lars Hupel) the curriculum on Functional Software Architecture for iSAQB.

Slides
sperber.pdf