~/talk

Phases in Software Architecture

Talkat FUNARCH 2023 · on Friday, 2023-09-08· [software-architecture, functional-programming]
slides:none on file

Argues that multi‑phase program structure is captured by an applicative functor encoding phases, uses Day convolution to compose two‑phase and iterated multiphase computations, and shows concrete examples: a RepMin-style one‑pass minimum-and-replace implemented as a writer/reader split, a single‑pass leaf‑sorting via phase reordering, and a simple recipe for breadth‑first traversal by marking root now and children later. Claims compose with monadic effects per phase and that endpoint projection for choreography maps naturally to these Day convolution multiphase encodings.

AI-written summary · about

  1. 0:00Software architecture phases
  2. 1:30Storytelling for software design
  3. 3:15Data-driven programming roots
  4. 8:12Separating computation and execution
  5. 10:18Applicative functor gadget
  6. 13:29Traversing data structures with effects
  7. 17:24Depth-first vs breadth-first traversal challenges
  8. 18:06Solving repMin in one pass
  9. 23:50Traversal fusion and effect commutativity
  10. 27:02Two-phase computations with Day convolution
  11. 30:57Literate programming phases
  12. 33:49RepMin two-phase example
  13. 37:39Generalizing multi-phase architectures
  14. 40:29BFS reversal with phase alignment
  15. 40:50Phases in choreography and tiers
  16. 43:57Conclusion and research
  17. 44:46Q&A on phase ordering
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.