Idea of 'closure' in functional programming