~/talk

Fun(ctional) Domain Driven Design (featuring Ukulele)

TalkinFrenchat Devoxx France 2023 · 2023-04-12..04-14· [functional-programming]
slides:none on file

Shows an F# live-coding session that builds a small DSL modeling musical concepts (typed semitones and chromas), encodes intervals and chords, and maps chord notes to ukulele strings and frets. Implements functions to compute fret positions, filter combinations that contain all chord tones, score difficulty by sum-of-squares of fret numbers, and pick the minimal solution to produce playable tablature for songs.

AI-written summary · about

  1. 0:00Introduction
  2. 1:48Notes and semitones
  3. 4:15Chroma type
  4. 8:14Operators and alterations
  5. 14:18Interval definitions
  6. 19:50Chord construction
  7. 24:33Ukulélé modeling
  8. 32:07Finding frets on strings
  9. 36:44Chord possibility filtering
  10. 39:17Position difficulty calculation
  11. 41:05Display and musical demo
  12. 45:00Conclusion
~/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.