Now that it is possible to have two CLRs running on the same box, how could they 'talk' to each other?
Let's say that the GUI is running under .NET 2.0 CLR and there is a script running on the .NET 4.0 CLR, for example, is there a way to modify the 2.0 based GUI from the 4.0 environment?
I have this exact issue when I use this technique to inject an .NET C# REPL environment into another .net process: Video: Injecting C# DLLs into Managed (C#) and Unmanaged (C++) processes
Note: I asked a similar question at Reddit and that version contains large number of references which will be useful if you are interested in the topic of Side-by-Side execution and CLR Hosting