I have started to use anonymous delegates a lot in C# and I have begun to wonder how efficient the complier or runtime is in removing them from the code that is actually run and I haven't seen this detailed anywhere?
Is it clever enough at all to inline them and collapse recursive uses that could be statically deduced?