> Parametricity comes essentially built-in, the way variables and functions are built-in to a programming language.
That is a common misconception, but in reality that's not how it shakes out. Realworld CAD software uses a geometric constraint solver because real world design problems have geometric constraints.
If you want to draw a rectangle with width X and height Y, sure you can handle that with variables.
What do you do if you want a triangle where one side is tangential with an arc, the other two sides have an angle Z between them and the intersection between that two sides is straight down from the center of the arc (that is they have the same x coordinate)? Is this description well-defined or do we need to give one more measure/constraint before it becomes so? Or maybe even over-defined and we can't possibly satisfy all these constraints?
This is the kind of question a geometric solver can answer, realtime as you are editing the sketch. You can try to cook up an ad-hoc solver every time you need one (with variables and functions) but then you are not in the business of designing stuff, but in the business of ad-hoc CAD development.