closure (tancadura)

A l’Scheme, es crea una tancadura quan una funció, en general una expressió lambda, es passa com a variable. La tancadura conté el codi de la funció i referències a les lligadures lèxiques de les variables lliures de la funció (és a dir, les variables que s’usen a la expressió però es defineixen fora d’ella). Quan més tard s’aplica aquesta funció a diferents arguments, les lligadures de variables lliures que es van capturar dins de la tancadura s’utilitzen per obtenir els valors de les variables lliures que s’usaran en el càlcul. Una propietat útil de les tancadures és la retenció dels valors interns de les variables d’una invocació a una altra, permetent així que es pugui mantenir un estat.

Referència de la notació del GNU LilyPond v2.25.22 (development-branch).