Documents and Live Demos
Conceptual Overview
- Language Oriented Programming: The Next Programming Paradigm (Article, 2004)
- Language Workbenches: The Killer-App for Domain Specific Languages? (Article, 2005)
- DSL Adoption with JetBrains MPS (Article, 2009)
- From Programming To Modeling — and back again (Article, 2010)
Introductory Tutorials
- MPS Editor Overview (Screencast)
- Building a simple Calculator Language (Article, Video)
- MPS for beginners — create your first DSL (Video series)
- Running MPS applications (Screencast)
- A more extensive Tutorial based on the LWC 11 Contribution (Article)
- Java Language Extension with MPS: A new Statement (Screencast)
- Java Language Extension with MPS: A Table Expression (Screencast)
- Java Language Extension with MPS: New Types and Operators (Screencast)
- Java Language Extension with MPS: Describing the dataflow (Screencast)
- Extending mbeddr C (Tutorial, see chapter 6, 2012)
- Tune the MPS channel on JetBrains TV for more
Reference Material
Advanced Topics
- Developing Make Facets for MPS (Article)
- Developing new Tools/Views for MPS (Article)
- Developing Data Flow Analysis for MPS (Article)
- Working with MPS and git (Article)
- Working with MPS and ant (Article)
- Language Modularization and Composition with MPS (2011, Paper)
- Screencast
- Part 1: MPS Intro (14:18)
- Part 2: The Entities Language (14:05)
- Part 3: Language Combination with the UI Language (14:51)
- Part 4: Language Extension with Expression Blocks (13:14)
- Part 5: Language Reuse (Separate Code) with the Persistence Languages (7:44)
- Part 6: Language Reuse (Mixed Code) with the RBAC Languages (07:57)
- Part 7: Language Embedding with the UI Validations/Expression Languages (12:55)
- Part 8: Bonus: MPS Annotations (6:24)
MPS Use Cases and Other Related Reading
- mbeddr: an Extensible Programming Language and IDE for Embedded Systems (Case study, 2012)
- Embedded Software Development with Projectional Language Workbenches (Paper, 2010)
- YouTrack use of MPS (Case study, 2012)
- Product Line Engineering with Projectional Language Workbenches (Paper, 2010)
- DSLs to fully generate business applications - Daniel Stieger, modellwerkstatt.org (Case study, 2012)
- MPS-based Domain-specific Languages for real time Java development - Tomas Fechtner (Diploma thesis, 2012)
- mbeddr C User Guide and Tutorials (Documentation, 2012)