"Oslo": Building Textual DSLs

Sign in to queue

Description

The "Oslo" modeling language can define schemas and transformations over arbitrary text formats. This session shows you how to build your own Domain Specific Language using the "Oslo" SDK and how to apply your DSL to create an interactive text editing experience.
  • Chris Anderson
  • Giovanni Della-Libera
    Giovanni has been a developer at Microsoft for 12 years. In that time, he's worked on VB5, VJ6, WinForms, ADO.Net, WCF and WS-Security* specifications. He's currently working on Oslo's "M" language.

Day:

0

Code:

TL31

Embed

Download

Download this episode

The Discussion

  • User profile image
    lcorneliuss​en
    If someone finds a blog entry or any resource on this: Please Post!
  • User profile image
    larsw
    I will probably attend the session later today. I'll try to put up a summary on www.larswilhelmsen.com - The webcast & PPTX will also be available tomorrow or something.

     --larsw
  • User profile image
    rodrigobamb​oo
    Any comments about the relationship between MGrammar and OMeta?
  • User profile image
    Rob​Jellinghaus

    Technically, OMeta is a PEG parser, which implies a top-down parsing strategy and a "scannerless" parser (no separation between tokenizing and parsing).  MGrammar is an LALR(1) bottom-up parser with a conventional DFA-based tokenizer; the MGrammar language has separate constructs for defining tokens and for defining parse productions.

    I'm not sure that was the level of detail you were asking for, but that's the situation as I understand it Smiley  The MGrammar folks intend to produce a white paper on this at some point, but haven't yet.

  • User profile image
    leblanc.​meneses
    I'll put a plug for my codeplex project:
    NPEG is a c# peg parser.

    http://www.codeplex.com/NPEG


  • User profile image
    dumky
    Good technical presentation. It would be good to explain how this solution makes developers more productive than other parser generators however. Also, how are MGrammar and MSchema better together?

    Also, I was incidentally looking at a cool web tool which uses a DSL to generate UML diagrams (http://www.websequencediagrams.com/). Digging some more into it, I found out language specs for UML (such as http://www.itu.int/ITU-T/studygroups/com10/languages/Z.120_1199.pdf) and that made it clear that any DSL language needs to be very well speced and documented. The presentation didn't demonstrate those aspects.

Add Your 2 Cents