Bei der Arbeit am Paper „Evolution of Functional UI Paradigms“, das
beim FUNARCH-Workshop der ICFP
2025
veröffentlicht wurde, kam mir ein Gedanke zu puren Funktionen, den ich
hier gern separat kurz erläutern möchte. Als Argument für pure
Funktionen führen wir funktional Programmierenden gern die bessere
Testbarkeit ins Feld: Pure Funktionen erfordern keine komplizierten
Test-Setups und Mocks, sind deterministisch, parallelisierbar etc. In
der Tendenz ist das sicherlich richtig. Pure Funktionen sind oft
besser testbar. Notwendig ist dieser Zusammenhang allerdings weder in
die eine noch in die andere Richtung. Es gibt pure Funktionen, die
sind schlecht testbar und es gibt auch nicht-pure Funktionen, die gut
testbar sind. Die Purity selbst kann also der Stoff nicht sein, der es
erlaubt, Programmstücke ordentlich zu testen. Was aber ist dann dieser
Stoff?
Weiterlesen...