Penguin
Annotated edit history of C# version 3, including all changes. View license author blame.
Rev Author # Line
1 PerryLorier 1 Or, more accurately C♯
2
3 Microsoft panicing about how Java was doing so well, took the idea of a VirtualMachine (like the Java VM) and created their own one called ".NET". Then, as an "innovation" they allowed multiple languages to target this VirtualMachine, but the main language is "C♯" (pronounced C Sharp). It's been said that all the languages that have been ported to .NET just end up being "skins" on top of C♯.
4
2 CraigBox 5 MiguelDeIcaza decided that .NET was a good idea, so he's busy working on "[Mono]", an implementation of the .NET "Framework" for POSIX compliant OS's.
1 PerryLorier 6
3 LawrenceDoliveiro 7 The idea of using a VirtualMachine isn't a new one, the oldest case I'm aware of is perhaps SmallTalk or even Pascal's "p-code". The reason it's so "hip" and "trendy" at the moment is that you can easily sandbox a VirtualMachine[1][2] and thus provide security. It also provides "Compile once and run anywhere", which as almost everyone knows is "Compile once and hope like hell".
1 PerryLorier 8
9 Compare [Java]
10
11
12 [1]: Although you could very well just sandbox a process with today's VirtualMemory supporting processors, OpenBSD does this to some extent.
3 LawrenceDoliveiro 13 [2]: Also, in fact, there has been a long history of security holes in these sandboxes.