In short, a similar critique to that of Perl and PHP, except math is even worse.
Show me a Python-like notation for a math construct and I'm good to go. Even a Lisp!
Lean/mathlib is a mix of functional programming and classical math notation. The community likes unicode quite a lot, with support by the editor (using quasi-Latex input methods in both VS Code and emacs). Here's an example from graph theory (I removed some conceptually irrelevant parts):
theorem simple_graph.sum_degrees_eq_twice_card_edges (G : simple_graph V) [fintype V] :
∑ (v : V), G.degree v = 2 * G.edge_finset.cardHow much is mathematical notation contributing to the idea that "math is hard" and preventing students to think of math as lego bricks in which you can use a set of functions to build newer functions?
Isn't this something that mathematical notation lets you be able to see at all? (I'm also not sure what you mean here exactly.)
By the way, have you heard what Euclid allegedly said to Ptolemy I when the king found the Elements to be difficult? "There is no royal road to geometry." Math is inherently challenging, and it's doubtful that removing powerful tools would make it any less so. I think of notation as being something that makes more complicated thoughts to be easier to have -- misquoting Alan Kay, good notation is worth 80 IQ points.
My hypothesis is that it's a bias from limited information. You have something with inherent complexity to it: math, music theory, physics, code, you name it. In order to represent those complexities, complex jargon gets formed. An outsider attempting to understand a given field is likely to have a (in these cases correct) assumption that the field is complex: if it wasn't, then they wouldn't be putting effort into understanding it.
In their effort to understand it, they eventually run into something they don't understand immediately or easily. They then assign the majority of their perceived complexity of the system to that first thing they got stuck on.
So instead of thinking "programming is hard" they think "reading/writing source code is hard". The practicioners of the field, with the benefit of hindsight, know that picking up the syntax/jargon/notation was in fact far easier than understanding the concepts they represent. But the outsider can only see the immediate challenge, which is the symbology.
Edit: it was in here: http://worrydream.com/#!/KillMath
One big example of a major notation change is Grothendieck’s effect on algebraic geometry. It used to be about solutions of sets of polynomial equations. Now it’s all about sheaves and schemes and moduli spaces and representable functors and stacks and… This new notation changed the way mathematicians think. Did it simplify things and made it more accessible to lay people? I’d argue, not at all, in fact you probably need a year or two of university math education to fully understand what a scheme even is.
I guess category theory is example in the other direction: it greatly simplified and unified thinking in algebraic topology and geometry. However, it’s not that big of a help to a complete newbie: if you are at a complete loss when you encounter a cohomology theory for the first time, framing it in terms of graded functors won’t be of huge incremental help.
Point here is that notation is there to help mathematicians, not regular people, but regular people neither are able to understand all of it, nor do they care, so it’s not much of a loss.
Today we teach algebra and calculus to schoolchildren. I believe as bad as the notation probably still is, the improvement from the original texts is nothing short of qualifying as its own revolution in mathematics. So it's interesting to imagine it being even better.
But I also believe that we only teach one side of math in school, basically manipulation of expressions. We barely touch on other ways that people do math, through the exploration of data, computation, and theory (proofs). So we're painting a distorted picture of what math even is, making it all the harder to justify why it's important beyond just being a gatekeeper.