But what does strings have to do with it? Why can't those expressions be plain Perl, maybe with some overloaded operators?
For example,
import week, custom, si, type from stdlib.units
weight = 10 * si.kg
speed = 2.5 * (custom("furlong", type.LENGTH) / week)