Home > General Development > Microsoft Research Looks to Extend C# Microsoft Research Looks to Extend C# Eugenia Loli 2004-01-18 General Development 6 Comments There are a few pieces of information on Xen floating around the Web. Some characterize Xen as “the hypothetical extension of C#.” Others describe Xen as an amalgamation of Microsoft’s Common Language Runtime (CLR), XML and SQL programming language. About The Author Eugenia Loli Ex-programmer, ex-editor in chief at OSNews.com, now a visual artist/filmmaker. Follow me on Twitter @EugeniaLoli 6 Comments 2004-01-18 8:49 am Bringing XML to more places where it shouldn’t go. And SQL integration? Doesn’t it strike *anybody* else has hideously inelegent, integrating such things into the language proper? This *screams* for proper procedural macros. With macros, you can do these things in a highly general way. Basically, what Zen consists of two domain-specific languages (XML, SQL) grafted onto C#. With procedural macros, instead of waiting for MS to hack it into the compiler, you get a set of general purpose tools that can be used to build *any* domain-specific language on top of the core language. In fact, in languages like CL and Dylan, its impossible to tell the difference between macros and the underlying language, as many language features are actually just macros. Even Perl6’s redefinable syntax sounds better than this… Much more interesting things are afoot at Microsoft Research: http://research.microsoft.com/~nick/polyphony/ Polyphonic C#, join-calculus based concurrency in C#. Now that’s nifty. PS> The article pissed me off: “Microsoft Research (MSR) has been dabbling with a number of new programming languages and paradigms. Last year, the F# language was big news.” While F# wasn’t really a new programming language, and it certainly was not a new paradigm. F# is modeled after Ocaml, which itself is modeled after Standard ML. And functional programming, the paradigm at work in F#, is as old as the hills, first introduced in the late 1950s in Lisp, and later highly refined by ML in the early 1970s. 2004-01-18 2:53 pm what would be nice is if, in the same sourcefile, different languages could be easily mixed; some functions in TSQL, others in C#, others in C++ etc. Given the equiv of the framework, this might just be possible. 2004-01-18 3:22 pm C# is starting to get some market penetration. Not a lot in the markets I am in but I do see requests for it with some regularlity. To get on topic though, it is interesting as a research project but I am a little more sceptical as a programming language. Basically all they are doing is taking 2 of the core APIs for C# and embedding a language syntax for them rather than using an API. I can see the motivation, but I would rather learn and use the core language properly than learn multiple languages with specialized syntax built in. 2004-01-18 4:38 pm c#/.net beats java in every aspect. a truly next gen pro lang. sad its only for windows.(dont start with those ximian stuff pls) 2004-01-18 4:49 pm by the University of Cambridge’s cool project: http://www.cl.cam.ac.uk/Research/SRG/netos/xen/ 2004-01-18 4:59 pm Xen appears to be a joint project of Cambridge and MS research “( Work on Xen is supported by UK EPSRC grant GR/S01894, Intel Research, and Microsoft Research. )” but, on the University’s page it’s a virtual machine environment but HERE ( also Cambridge U): http://www.cl.cam.ac.uk/~gmb/Papers/vanilla-xml2003.html#S4., they speak of the Xen data-model. Isn’t there enough confusion in the IT world without having the same name used for radically different projects, at the same institution no less. Why don’t they just call everything Windows and be done with it. The Windows word-processor, the Windows Web browser , Windows web-publisher. Save them a few marketing bucks, wouldn’t it.