For
in 
As I spent a number of years working in Visual Basic and #c the concept of binding brings to mind a programming concept of
early and late binding
Early binding - it's when the compiler checks the syntax of the entire project code. If there is error it won't let you run the program. That's how C# works.
Late binding is when the compiler gives a programmer some trust, allowing the program to run and test the validity of the code during the run time. If it is good, it will run but if it's bad, it will crush. That's how Visual Basic 6 works.
It's like in the restaurant when you are given a menu you can choose whatever you want from it. Yet, sometimes, the owner will come and offer you a surprise dish and when you eat it, you might like it a great deal, but can also spit it out. :)