Design DSLs with xDSL
summary
xDSL is a Python reimplementation of MLIR that prioritizes approachability and textual IR interoperability, letting teams define ops and types in minutes and iterate fast. The project merges several climate and HPC stacks into an Open Earth Compiler using xdsl (stencil, Fortran, GPU, distributed-memory MPI) and reports sensible scaling with some GPU kernels faster than originals. The team implements an MPI abstraction upstreamed to MLIR and builds a Lean‑based certified MLIR (Lania) workflow to prove and automate correctness of lowerings.
AI-written summary · about
chapters (9)
- 0:00xDSL and compiler frameworks
- 3:11Motivation for xDSL
- 6:06Accessibility and interoperability
- 8:58Adding operations and types
- 10:21Case study: climate DSLs
- 13:34End-to-end project
- 13:54Lania: MLIR implementation
- 17:24Formal verification and Lean
- 18:26Q&A: DSL trade-offs
related talks
24mDesigning a DSL That Perfectly Solves Your Problem
23mAnyDSL: A Partial Evaluation Framework for Programming High-Performance Libraries
01h 00mBuilding DSLs on Top of KernelF
30mYin-Yang: Concealing the Deep Embedding of DSLs (Most Influential Paper)
35mDesigning Domain-Specific Languages: A Comparison of Three Approaches by Example
48mCross-Domain Compilation: Exploiting Synergies Across the CS Community
29mIntegrating Language Engineering into the Software Development Process
53mDeveloping DSLs in a pragmatic way
