The short story is: MPS can do physical units.
Some of our fans face the challenge of designing languages that will be used in technical fields and thus should support physical units. As a proof that the MPS projectional editor as well as its type-system are up to the task, our very own fisakov has built a sample Physical Units BaseLanguage extension that implements all the necessary parts – annotations for physical units, properly styled editors and type-system rules ensuring compatibility of units in expressions.
Develop with pleasure!
-JetBrains MPS Team