Durante o PDC 2008, David Langworthy, Arquiteto na Microsoft e Don Box, Distinguished Engineer na Microsoft, conduziram uma apresentação sobre Oslo, focando especialmente na linguagem de modelagem M, explicando o que é e o que não é e também demonstrando como usar M para cria um modelo de dados.
De acordo com Don, Oslo é constituida pelos seguintes componentes:
- M Language - uma linguagem de modelagem
- Quadrant - uma ferramenta de modelagem
- Repository - um modelo de armazenamento
Don explica que eles escolheram uma linguagem de modelagem porque eles queriam oferecer uma ferramenta de design que permita trabalhar com modelos textuais. M permite alguém criar um modelo digitando, da mesma forma que criaria um programa em outras linguagens.
De acordo com Don, M é:
- “M” é uma linguagem para definir modelos de domínio e domain-specific languages(DSL) textuais.
- O modelo de domínio de M define schema e queries sobre daods estruturados
Values, Constraints, e Views
Projeção natural para SQL- M DSLs definem projeções para texto Unicode para dados estruturados
Transformação baseada em Regras
Integração com editor de texto orientado a gramática
"M é sobre capturar, esquematizar e transformar dados", diz Don. M oferece apenas uma representação de dados, não possue comportamente relacionado aos dados, por isso não há polimorfismo. Tipagem é feita por tipagem estrutural, da forma que os dados estão estruturados.
M não é uma linguagem OOP. M não é uma tecnologia de acesso a dados. Enquanto todos os dados podem ser transportados de/para um banco de dados, M não é uma solução OLTP e não é um substituto de T-SQL.
em uma demonstração ao vivo, David cria um modelo de dados, armazena os dados em um banco de dados e retorna os dados do banco. Ele mostra algumas características da linguagem, como constraints, identity, value types, funções e outros.
Você pode fazer o download do Oslo SDK a partir do MSDN.