ICFP 2022
Sun 11 - Fri 16 September 2022 Ljubljana, Slovenia

The goal of this track is to assemble a community interested in software architecture techniques and technologies specific to functional programming. We plan to identity, categorize, and document topics relevant to Functional Software Architecture.

Software architecture here refers to large and long-lived software projects released to actual users - typically industrial ones.

This track has no scientific or publication goals. Instead, we aim to put the “work” back in “workshop”!

The track will be organized as an Open Space.

This means collecting possible topics, and creating spaces for those topics to be discussed by whomever is interested, documenting and topics or results that come out.

Track Organization

Folks interested in programming in the large will meet at 9:00AM. We’ll have a short introduction, and collect possible subjects for discussion. We’ll then make a schedule, assign a space for discussing each subject, and publish the resulting session schedule here, and on-site.

Note: Come when you’re ready and have time for FUNARCH. You don’t need to be there at 9:00AM. People are welcome to come in as they please, and leave when they like.

Each session will have a designated person to start the discussion, and material for recoring the discussion. The format is completely open. We’ll have a short presentation of the results at about 5:00PM.

There’s only one immutable law for the Open Space: The law of two feet.

If, during the course of the gathering, any person finds themselves in a situation where they are neither learning nor contributing, they can go to some more productive place.

There are also four rules for the Open Space:

  1. Everyone present is the right person. Everyone has the right to participate, whether you’re new to functional programming, have only research experience, or have built large-scale systems using functional programminbg.

  2. Whatever happens is the only thing that could have happened. We don’t have any preconceived notion of the topics that require discussion, or what technology/technique is absolutely required for successful software architecture.

  3. It starts when the time is right. If we need to wait for inspiration or the right folks to come together, we’ll wait.

  4. It’s over when it’s over. One everything has been said in a session, it ends.

Open Space Notes

Title
Introduction and Session 1
FUNARCH
Session 2
FUNARCH
Session 3
FUNARCH
Session 4
FUNARCH

Topics

The track took place, and generated lively discussion on the following topics:

  • language evolution vs. long-lived software
  • transactionality / atomicity
  • language features vs. modularity
  • build systems
  • on-boarding / training for functional programming
  • memoization
  • how could research help with “small” contributions
  • tooling
  • architectural patterns
  • artifacts
  • transactionality / atomicity
  • large Haskell apps
  • domain modelling
  • mutation testing

Plenary
You're viewing the program in a time zone which is different from your device's time zone change time zone

Thu 15 Sep

Displayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change

08:00 - 09:00
RegistrationCatering & social at Foyer 2
08:00
60m
Registration
Registration
Catering & social

09:00 - 10:30
Functional Software Architecgture: Introduction and Session 1FUNARCH at M4
09:00
90m
Meeting
Introduction and Session 1
FUNARCH
C: Michael Sperber Active Group GmbH
10:30 - 11:00
Coffee breakCatering & social at Foyer 2
10:30
30m
Coffee break
Coffee break
Catering & social

11:00 - 12:30
Functional Software Architecture: Session 2FUNARCH at M4
11:00
90m
Meeting
Session 2
FUNARCH
C: Michael Sperber Active Group GmbH
12:30 - 14:00
12:30
90m
Lunch
Lunch
Catering & social

14:00 - 15:30
Functional Software Architecture: Session 3FUNARCH at M4
14:00
90m
Meeting
Session 3
FUNARCH
C: Michael Sperber Active Group GmbH
15:30 - 16:00
Coffee breakCatering & social at Foyer 2
15:30
30m
Coffee break
Coffee break
Catering & social

16:00 - 17:30
Functional Software Architecture: Session 4FUNARCH at M4
16:00
90m
Meeting
Session 4
FUNARCH
C: Michael Sperber Active Group GmbH
17:30 - 20:00
Industrial receptionCatering & social at Foyer 2
17:30
2h30m
Social Event
Industrial reception
Catering & social

Questions? Use the FUNARCH contact form.