Select Connection: INPUT[inlineListSuggester(optionQuery(#permanent_note), optionQuery(#literature_note), optionQuery(#fleeting_note)):connections]

paradigm where programs are constructed by applying and composing functions.

Rather than a sequence of imperative statements, function definitions are trees of expressions that each return a value.

example:

println!("{}", (1..11).fold(0, |a, b| a + b));

We are describing what to do rather than how to do it. fold is a function that composes functions composes functions