ICorDebug, Edit-and-Continue, and C#

In case anybody missed it, VS 2005 C# is going support Edit-and-Continue! (See announcement, and some follow up posts by the C# team from Andy and Steve).

 

The CLR is a language-neutral platform. So naturally, our debugging API (ICorDebug) operates at the IL level so that it can be language-neutral as well. The Edit-and-Continue support in the debugging API is language-neutral, though it was mainly designed to ensure that key VB scenarios worked.   

 

In theory, any 3rd party could write their own managed debugger and support EnC for their own languages ([Update]: see here for how a 3rd-party can support EnC).  The C# team put this to the test because they did EnC without any additional modifications to ICorDebug.