The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
So there's this thing in .NET called the "default binder" which has methods like BindToMethod() and BindToProperty().
What it does is it tells .NET how to resolve things like overloaded methods and choose which one is appropriate based on the passed in arguments.
Reflection uses it underneath Type.InvokeMember() and the C# compiler (as well as other compilers) almost certainly use it to help with choosing what methods to bind to (on external types) within a method/property group.
The docs use words like "generally". I wish I was joking. As in generally it only does widening conversions on parameters.
I don't care about generally. I care about specifics, because I have to emulate it for my own non-compiled types.
it's off to the reference source (again)
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
If you really know every single line of the program, so that you can explain why it is there and what it does, and you can tell the effect of changing it, then the program is not big.
I have never been working with a program in excess of 30 KLOC without, every now and then, scratching my head, asking "Why the *** is it programmed like that?" - even when it is programmed by myself. So it is a big program.
I guess that for me, the big programs start somewhere between 10 KLOC and 30 KLOC, depending on the complexity of the code.
With one exception: Any APL program exceeding 30 lines is big.