Extending LilyPond: 2.3.1 Music function definitions

### 2.3.1 Music function definitions

The general form for defining music functions is:

>     function =
>     #(define-music-function
>          (arg1 arg2 …)
>          (type1? type2? …)
>        body)

quite in analogy to Scheme function definitions. More often than not, body will be a LilyPond code block.

For a list of available type predicates, see Predefined type predicates.

#### See also

Notation Reference: Predefined type predicates.

Installed Files: ‘`lily/music-scheme.cc`’, ‘`scm/c++.scm`’, ‘`scm/lily.scm`’.

#### LilyPond — Extending v2.22.2 (stable-branch).