It’s just data

M as in MVC

Noah Mendelsohn: it looks like Oslo is in part being positioned as a competitor to XML.

I don’t believe that Microsoft is explicitly positioning Oslo as an XML competitor, though that may very well be a completely unintentional side effect.

Instead, M is a Turing complete programming language, with types, operators, literals, functions, and the like.  The language itself is a component of a modelling platform and can be viewed as a scripting language for Model Driven Development.  I must confess that this term sends shivers down my spine and induces flashbacks of the Repository Manager in the IBM SAA AD/Cycle days.

To those familiar with Rails, its focus is the “M” in MVC, or more precisely Active Record plus a DDL (which is one of the functions migrations do).  It can express things that could also be expressed in JSON or XML only in the sense that an sqlite3 dump does too.  It can also express constraints and relationships, things that aren’t as native or built-in to XML (some parts of which you can get via a Schema language).  A concrete example of such a data declaration.

type Person {
    Id : Integer32 = AutoNumber();
    Name : Text;
    Age : Integer32;
    Spouse : Person;
} where identity Id;

Note Spouse as a relationship.  More examples can be found in Don Box and David Langworthy’s demo.

One interesting fallout of the schema aspects of M is that its pattern matching aspects when applied to text enables M to be useful as a DSL.

Apparently the “Oslo” SDK CTP contains Intellipad, and requires Microsoft Visual Studio 2008 if you wish to compile and execute the samples.  I would be interested in knowing if Visual Studio Express would be sufficient, but I haven’t tried it yet.


[link]...

Excerpt from Delicious/Vathek at

FYI: You just need the .Net Framework to compile the samples.  The team is going to update the download site at the next CTP drop to make that clear.

Posted by Douglas Purdy at

I hope it’s clear that I have no first hand knowledge of how Microsoft is “positioning” Oslo or M, though I am curious.  My blog entry was mainly quoting James Clark’s impressions from his visit with the Oslo team.

Posted by Noah Mendelsohn at

Is Oslo being positioned as a competitor to XML?

Sam Ruby posts M as in MVC commenting on Noah Mendelsohn talking about the M language being closer to JSON responding to James Clark’s post, one of the co-inventors of XML, on his week spent working with the Oslo team at Microsoft....

Excerpt from Development in a Blink at

Sam Ruby on "M" http://bit.ly/3jeTg (via Twitter)

Twitter “Sam Ruby on “M” [link] ” 5 hours ago - Comment - Like...

Excerpt from Douglas Purdy - FriendFeed at

Oslo is essentially the next evolution of the DSL Toolkits and Microsoft’s “Software Factory” initiative. Essentially, the idea is to create a declarative language that deals with more abstract constructs than classes, functions, and properties. This “Domain Specific Language” can then be consumed by a graphic designer for manipulating elements and generating an intermediate syntax tree (not unlike XML) that can then be used by code generators to spit out the code final code the model represents.

Posted by Mike Brown at

submitted by gthank [link] [0 comments]...

Excerpt from programming: what's new online at

In the “Person” example above, the constraint that spousehood is symmetric is not expressed, so far as I can see.  Is this: because my eyesight is poor; because it would add distracting clutter; because it can’t be; or because it isn’t necessarily so?

Posted by Des von Bladet at

Add your comment