I only recently saw that .NET (or rather Rotor) has been ported to Linux (well 94%) - much more complete than Mono.
What is .NET and how do you get a language to run on it? The first article is about the changes made to C/C++ to make it work on .NET (called "Managed C++"). I'm surprised by Betrand Meyer's support of .NET. It really does sound a lot like he's had to make a lot of cludges to Eiffel to get it to work on .NET and all the while defending that .NET breaks Java's one language, one platform stance. I don't think that people have said that at all.
"The language openness of .NET is a welcome relief after the years of incessant Java attempts at language hegemony. For far too long, the Sun camp has preached the One Language doctrine. The field of programming language design has a long, rich history, and there is no credible argument that the alpha and omega of programming, closing off any future evolution, was uttered in Silicon Valley in 1995. Microsoft's .NET breaks this lock."His second article goes further on how he modified Eiffel. Even though he explains that the source code looks like normal Eiffel - it just doesn't look like a normal Eiffel library when it's compiled.
His last article importantly lists the rules that you have to follow in order to produce a .NET language. He says that language interoperability is either impractical or involves more work:
"It's not realistic, in an application containing C++, C#, Eiffel and Cobol elements, to expect them all to talk to elements written in one or more of the other languages. A project is multilanguage because it consists of a number of subprojects, each written in a particular language; in practice, each subproject will usually include a few bridge modules that talk to other languages. CLS compliance affects only these bridge modules; typically a small subset of the software. Everywhere else, each subproject can behave as if it were a single language."He still contends that .NET is the future:
"This exciting architecture holds the potential of a programming language renaissance, enabling languages to compete on merit, not political prejudice, and the field to blossom as never before."