Essentially, what I am noticing is a greater extent of context sensitive ambiguity
in the Julia language. What prevents the Julia language from truly being able to have a 1-1 correspondence with mathematical vernacular is its ability to discern context sensitive ambiguities. Mathematicians are able to do this, but most programming languages, including Julia, cannot.
One example of contex sensitive ambiguity is the fact that Julia cannot discern between the overloaded definitions of +
by scope.
Another example is that Julia is unable to discern the context sensitive ambiguity of order of operations for the definitions of +
by scope.
If you wanted to be able to turn Julia into an extremely flexible theorem-prover type of mathematical vernacular / language, you would definitely have to be able to discern those two examples of ambiguity.
The one common trait of all these ambiguities is that they are contex-sensitive, i.e. they should depend on the scope of the evaluation, i.e., determined by what is in the local namespace.
Mathematicians, for example, make many new definitions of the same symbols in different contexts, and in these different contexts you might need different definitions of the same exact thing, further with possibly diferent order algebraic of operations or associativity.
These are some things that the language designers might want to think about, in my hope…