The closure part is not having to explicitly pass minimum or maximum to w(). When python tries to execute w(), it looks for min and max inside of w(). It does not see them, so it checks the next scope up, Window(). The double checking costs a few CPU cycles but saves a lot of keystrokes.