Home
DSLs: definition, implementation, design concerns
Zoo of domain-specific languages
DSLs: what, why, how
Fluent interfaces
External domain-specific languages
Implementing DSLs in practice
Language Workbenches
Design dimensions of DSLs
Design concerns for concrete syntax
DSL development
Worst practices
Tutorial on Xtext and Xtend
Xtext: writing a grammar
Xtext: Eclipse Modeling Framework
Xtend Programming Language
Xtext: validation, quickfixes, custom formatting
Xtext: type checking and scoping
Xtext: code generation
Cheat sheet on Xtext Grammar Language
Cheat sheet on Xtend
Projectional editing and tutorial on JetBrains MPS
Projectional editing
JetBrains MPS: Structure Aspect
JetBrains MPS: Editor Aspect
JetBrains MPS: Typesystem Aspect
JetBrains MPS: code generation
Useful links
UTU 2020 (Moodle)
MODELS 2020
ABZ 2020 → 2021
FM 2021
About
Home
DSLs: definition, implementation, design concerns
Zoo of domain-specific languages
DSLs: what, why, how
Fluent interfaces
External domain-specific languages
Implementing DSLs in practice
Language Workbenches
Design dimensions of DSLs
Design concerns for concrete syntax
DSL development
Worst practices
Tutorial on Xtext and Xtend
Xtext: writing a grammar
Xtext: Eclipse Modeling Framework
Xtend Programming Language
Xtext: validation, quickfixes, custom formatting
Xtext: type checking and scoping
Xtext: code generation
Cheat sheet on Xtext Grammar Language
Cheat sheet on Xtend
Projectional editing and tutorial on JetBrains MPS
Projectional editing
JetBrains MPS: Structure Aspect
JetBrains MPS: Editor Aspect
JetBrains MPS: Typesystem Aspect
JetBrains MPS: code generation
Useful links
UTU 2020 (Moodle)
MODELS 2020
ABZ 2020 → 2021
FM 2021
About
Domain-specific languages
Follow @mikhail_barash
Cheat sheet on Xtend
Download PDF