Joseph Morag - Open Strings

Опубликовано: 01 Декабрь 2024
на канале: Konfy
185
3

Special thanks to the Haskell Foundation for supporting the production of this video!

Haskell Love 2021 schedule: https://emamo.com/event/haskell-love
Haskell Love twitter:   / _haskellove  

Choosing fingerings for violin music is a hard problem, both for humans and computers. Though there is a great deal of pedagogical literature by famed teachers and performers on the subject, most violinists wind up developing the skill of picking a fingering only through years of study and trial and error. Besides being a hard problem, choosing fingerings is one with no agreed upon optimal solution. What distinguishes a good fingering from a bad one is highly individualized to a specific musician's tastes.

[OpenStrings](https://open-strings.com) is an expert-system style inference engine written in Haskell for fingerings with configurable rules to account for the individual preferences of the user. Evaluation by expert violinists of the generated fingerings has concluded that the results are competitive with human generated fingerings. The app makes use of many Haskell techniques, from TemplateHaskell routing with Yesod to dark lens magic for processing MusicXML.