Programming Your Own DSL in Rust – Experiences from Developing µcad
by Michael Winkelmann
In 2025, we developed µcad (pronounced micro-cad), a domain-specific language for CAD for describing geometries. The µcad interpreter and renderer is implemented almost entirely in Rust, leveraging the language’s performance, features and tooling.
In this talk, we will share experiences and insight about:
- which Rust crates we have used
- how we achieved consistency between language specification and documentation,
- auto-generating tests
- architectural patterns
We will discuss what worked well, what surprised us, and the lessons we learned while developing a domain-specific programming language from scratch.
Michael Winkelmann
he/himIndependent Software Engineer
A software engineer and community leader driving Rust adoption in academia and open-source to empower the next generation of developers.