Languages - DevSource
DevSource: Microsoft Developer Resource DevSource Home Sponsored by Microsoft Home Add Ons Architecture Languages Techniques Using VS Forums
Home arrow Languages arrow Microsoft Expands .Net With Xen
Microsoft Expands .Net With Xen
By Robyn Peterson

Rate This Article: Add This Article To:

Microsoft Expands .Net With Xen
( Page 1 of 6 )

Preview: The hot new language from Microsoft Research offers native XML and database support (in addition to the powerful punch of .Net) and possibly ushers in a new generation of programming languages.

In the professional world, most programming can be summed up in two words: data manipulation. And these days, much of the data being manipulated comes prepackaged in XML documents or SQL tables.

So why do languages like C# force programmers to use obtuse APIs to access those data structures? It would be much more convenient if C# had a notion of XML and SQL built directly into the language--and if Microsoft has its way, it soon will.

ADVERTISEMENT

Xen, a new programming language coming out of Microsoft Research and developed in conjunction with the University of Cambridge, promises to bring together three disparate but integral components of programming, wrapping them together in .Net. Xen's creators use a geometric metaphor to illustrate this conjoining, calling the language a means to program with "circles, triangles, and rectangles."

  • The circle represents object-oriented programming. In .Net, that's C# and the Common Language Runtime (CLR). CLR manages the execution of code, whether its C#, VB, or F#. It's at the base of .Net. This piece is not changing.

  • The triangle represents data in a hierarchical structure, namely, XML. Programming with XML in C# can be tiresome today. The APIs needed to access XML data structures tend to obfuscate the code and lead to security holes, poor type-safety, and logic problems. With Xen, Microsoft proposes to encompass XML in the C# language, giving it first-class, native support.

  • The rectangle represents relational data, or data stored in tables in a database. Today's code tends to be riddled with verbose strings containing SQL and redundant ADO.Net API calls. According to Microsoft, Xen will incorporate relational data manipulation constructs directly into the language, solving that problem as well.

For those of you already familiar with C#, it's clear that Xen is simply C# with additional features and capabilities. In fact, it's just C# with two of its most used APIs -- XML and database manipulation -- now built directly into the language.

The architects behind Xen believe that if an API is used frequently, it should be considered for incorporation into the primary language. The popularity of XML and relational data structures make them the most likely candidates for inclusion.

Along with native support for XML and SQL, Xen will include the entirety of the C# language. According to the creators, that will lead to simplified programming and increased productivity. Are they correct, or do these new features simply add to the bloat of the C# language?

Click on the next button below for our short preview of Microsoft's new Xen language, and what it means for you.

Note: Since Microsoft has not yet publicly released a Xen compiler and information appears to be restricted, the code examples in this article are primarily from the only published paper on Xen, Programming with Circles, Triangles and Rectangles.



 
 
>>> More Languages Articles          >>> More By Robyn Peterson
 



Microsoft's Future: A Chat With Their CTO, Barry Briggs

Play Video >

All Videos >

Julia explores the Robotics Studio!

Read now >

Messages to Bill Gates!

Read now >

View Now
DevSource RSS FEEDS
XML Want an easy way to keep up with breaking tech news? And the Get DevSource headlines delivered to your desktop with RSS.