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:
-
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.
-
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.
-
It starts when the time is right. If we need to wait for inspiration or the right folks to come together, we’ll wait.
-
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
Thu 15 SepDisplayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change
08:00 - 09:00 | |||
08:00 60mRegistration | Registration Catering & social |
09:00 - 10:30 | |||
09:00 90mMeeting | Introduction and Session 1 FUNARCH |
10:30 - 11:00 | |||
10:30 30mCoffee break | Coffee break Catering & social |
11:00 - 12:30 | |||
11:00 90mMeeting | Session 2 FUNARCH |
12:30 - 14:00 | |||
12:30 90mLunch | Lunch Catering & social |
14:00 - 15:30 | |||
14:00 90mMeeting | Session 3 FUNARCH |
15:30 - 16:00 | |||
15:30 30mCoffee break | Coffee break Catering & social |
16:00 - 17:30 | |||
16:00 90mMeeting | Session 4 FUNARCH |
17:30 - 20:00 | |||
17:30 2h30mSocial Event | Industrial reception Catering & social |