But what are they really doing with .NET? How can the .NET languages be used without a compiler to transform them into the intermediate language first?
It almost sounds like they are using the .NET languages as scripts for their engine instead of having separate class libraries for .NET (like 3DTV). If so they are not really encompasing the cross-application power and ease of use of .NET.
.NET can be used without a compiler (a "compiler" such as the mainstream languages' compilers). There are a number of .NET partners and language vendors that do it that way. For example the one i use, APL.
I can type in my language's main session window (looks a bit like Notepad) in a newly started, clean workspace:
#Using = 'System' [i press enter here, it "executes" this row as if it was a piece of app code]
A = System.Math.SquareRoot 2 [enter]
After that, A contains the value 1.414213etc. (the above is pseudo, for this example only).
.NET is just a huge collection of subroutines. :-)
The .NET framework actually includes the compiler. You can, for example, call the assembly compiler to compile a string that is a piece of code. You can see this in action if you look on
http://www.thecodeproject.com/ and search for TaHoGen. TaHoGen is a scripting tool which uses C# and VB as its scripting languages, and you create these templates. Its part of a code generation scheme, but if you look at the source you'll see it has a parser and uses .NET built in compiler tools to compile the in-memory source to an assembly (which then can be dynamically loaded and executed).