Official: Microsoft's C# is Cool

Parse this, Sun

When Microsoft rolled out its new programming language, C#, in June, a team of spin-paramedics was on hand to point out that no way, never ever was this anything to do with Microsoft's allegedly mythological "Project Cool".

However, we spotted in the documentation for C# an extended attribute created by language spec co-author Scott Wiltamuth that read 'Owner=scottwil Team=VC Feature=Cool'.

By your extended-attribute-tags shall ye know them, we thought, although we couldn't quite rule out the possibility that the witty language authors had inserted the reference as a tease. We even tried to out these fine folk with the naked enducement of a Register label badge, but the buggers wouldn't bite.

But it's all over now. Thanks to eagle-eyed Register reader Larry Smith, we've learned that C# is indeed Cool. Or if it isn't, it's chocca with references to it.

Take for example the C# file samples\quickstart\aspplus\samples\webforms\intro\acme.cs which contains the giveaway comment: "//TodoHack 'needed because COOL doesn't support array initializers yet'."

Then Larry discovered that the original C# compiler was called coolc (duh...) subsequently renamed as csc.exec. Elsewhere, sample C# code has the HTML tag <script language='COOL' runat='server'>, and Larry notes a couple of references to the string "C\temp\fact\factorial.cool"

Burrowing deeper into the libraries we find "CoolCodeStream" in VisualStudio.dll and "DataSetCSharp". "DataSetCool" and "Microsoft.VisualStudio.Data.CodGen.DataCacheCool.xsl".

Make files also have references to "compiling cool samples" - which Larry reckons isn't quite the smoking pistole, but nonetheless, we reckon, are too coincidental to be ignored. Had enough? Wait a minute - we haven't mentioned the preprocessor declarations such as COOL_EXE_FLAGS (hmm...)

It kinda reminds us of the beta trial of Windows NT 3.1 (nee OS/2 version 3.0) when Microsoft denied that WinNT had anything to do with its hated IBM counterpart... and that it was sheer coincidence that NT spewed a ton of identical OS/2 error messages (down to the number) as OS/2 did, in identical circumstances.

It's dirty work, but somebody has to point out Microsoft's unceasing innovation. And so it falls to us... ®

Related Story

Microsoft describes its Java killer

Sponsored: Today’s most dangerous security threats