Point { X { h }, Y { v }}; } type Point { X : Integer where X < 100; Y : Integer?; DistanceFromOrigin() { SQRT(X*X + Y*Y) } } Point { X { 100 }, Y { 200 } } Point.m Domain Model Point.m Domain Model DSL Y DomainY.mg Domain Grammar DomainY.mg Domain Grammar DSL X DomainX.m Domain Model DomainX.m Domain Model DomainY.m Domain Model DomainY.m Domain Model DomainX.mg Domain Grammar DomainX.mg Domain Grammar GPSLanguage.mg Domain Grammar GPSLanguage.mg Domain Grammar MSchema MGrammar MGraph"> Point { X { h }, Y { v }}; } type Point { X : Integer where X < 100; Y : Integer?; DistanceFromOrigin() { SQRT(X*X + Y*Y) } } Point { X { 100 }, Y { 200 } } Point.m Domain Model Point.m Domain Model DSL Y DomainY.mg Domain Grammar DomainY.mg Domain Grammar DSL X DomainX.m Domain Model DomainX.m Domain Model DomainY.m Domain Model DomainY.m Domain Model DomainX.mg Domain Grammar DomainX.mg Domain Grammar GPSLanguage.mg Domain Grammar GPSLanguage.mg Domain Grammar MSchema MGrammar MGraph">
Download presentation
Presentation is loading. Please wait.
Published byMark May Modified over 9 years ago
1
David Langworthy Architect Microsoft Corporation Don Box Distinguished Engineer Microsoft Corporation TL27
2
“ M ” Modeling language “Quadrant” Modeling tool Repository Model store
5
DSL "M""M" Domain-specific grammars Abstract data model Domain-specific data models language GPSLanguage { syntax Main = h:Integer ("," v:Integer)? => Point { X { h }, Y { v }}; } type Point { X : Integer where X < 100; Y : Integer?; DistanceFromOrigin() { SQRT(X*X + Y*Y) } } Point { X { 100 }, Y { 200 } } Point.m Domain Model Point.m Domain Model DSL Y DomainY.mg Domain Grammar DomainY.mg Domain Grammar DSL X DomainX.m Domain Model DomainX.m Domain Model DomainY.m Domain Model DomainY.m Domain Model DomainX.mg Domain Grammar DomainX.mg Domain Grammar GPSLanguage.mg Domain Grammar GPSLanguage.mg Domain Grammar MSchema MGrammar MGraph
7
M.exe Domain Model Compiler M.exe Domain Model Compiler MX.exe Domain Model Loader MX.exe Domain Model Loader ModelA.m ModelB.m ModelC.m ModelABC.m x SQL Server SQL Server M Framework Sample Fill M Framework
13
USE THE BITS VPC in the “Goods” Hard Drive http://msdn.microsoft.com/oslo GIVE US FEEDBACK douglasp@microsoft.com vijayeg@microsoft.com SEE THE OTHER TALKS “Oslo”: The Language “Oslo”: Customizing and Extending the Visual Design Experience “Oslo”: Repository & Models “Oslo”: Building Textual DSLs
14
Please fill out your evaluation for this session at: This session will be available as a recording at: www.microsoftpdc.com
16
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.