Posted By: Charles | Oct 29th, 2008 @ 9:58 AM | 46,095 Views | 7 Comments
Don Box, Chris Anderson and Paul Vick dig into their new programming language (well, it's a data modeling language that you use to create DSLs to express your data as opposed to a general purpose language...). What is M, exactly? What does it do? What can it do? To answer these questions, Don, Chris and Paul create a Channel 9 language to express Channel 9 video data. Now that's a great idea! Smiley Tune in, learn the thinking behind M and how to build data grammars with it. It's a very interesting way to program data.

See Don's PDC 2008 session here:
http://channel9.msdn.com/pdc2008/TL27/
Rating:
2
0
staceyw
staceyw
Before C# there was darkness...

Sounds interesting.  Is there a link yet to the ctp bits of M?

oh dear, yet another yacc...

what kind of grammars does it support. what kind of parsers does it generate?

The underlying parsing runtime uses GLR (Generalized LR).

The M grammar compiler produces structured data that drive that runtime.



Minh
Minh
WOOH! WOOH!
Two questions:

1) How long before M can crank out something that's a first-class citizen in Visual Studio? You know, w/ debugging, design-time stuff...

2) I think a perfect DSL is a scripting language, say... for a game. "Mario follows bad guy # 3" kinda thing.... Do I get M as a free product if I buy Oslo?
elmer
elmer
I'm on my very last life.

I always screw-up that reply thing...  Should be:  @Don Box:

Might have a problem with the name.

Although in lesser use now, 'M' is still an ISO-Standard language: ANSI X11.1-1995 and ISO/IEC 11756:1999

http://en.wikipedia.org/wiki/MUMPS

It is still sold & supported (under various disguises) by Intersystems:  http://www.intersystems.com/cache/index.html

It's one of the earliest dynamic type languages, and although a bit clunky by today's standards, still has some features that modern languages struggle to match.

I recall doing a bunch of work in this (and the earlier MUMPS variants) way back when.

Minh,

On the first point, we plan to fully integrate M into VS before we ship. 

On the second point, the Oslo SDK (which is how you get M) is a free download. 

DB
Microsoft Communities