I always wonder this but I’ve always found Lisp syntax to be a lot more intimidating and less readable for whatever reason. I should give it a fair shot one of these days.
ML syntax is really clean.
Newcomers to some kind of Lisp get confronted with identifiers that they haven't seen anywhere.
For instance, I'd say the piping is significantly better than the backwards reading of nested function calls you have to do in Python.
Data |> map |> filter |> group |> sum
Vs sum(group(map(a) for a in data if filter(a)))
I can see how it could be interpreted that way if you didn't read anything else in my post.
A lot more people use C syntax than use ML syntax, so your own argument, "[w]ith so many people preferring that syntax", would support C not ML.
> For instance, I'd say the piping is significantly better than the backwards reading of nested function calls you have to do in Python.
> Data |> map |> filter |> group |> sum
> Vs sum(group(map(a) for a in data if filter(a)))
That's not coherent Python syntax, but knowing both languages, I'll agree that the ML syntax is definitely better. But significantly better? Reading that sort of code in Python simply isn't a problem I run into. Neither syntax solves any problems I have, because understanding syntax isn't ever the problem I have (in languages that aren't intentionally opaque).
Incidentally, if you want that sort of thing in C-ish syntax, it's not hard to get it in (for example) C#:
data.map(f).filter(p).groupBy(g).reduce(add);But, I was also not indoctrinated by a computer science degree, which probably has a lot to do with it.
Of course, if you started with ML syntax, you'd feel the same way learning a language with C syntax.
But if you're introducing a new language, it makes sense to target the language the most people are already familiar with. Maybe your language does really bring some real syntax improvements, but it's a silly hill to die on, because syntax just isn't very important.
If syntax changes are all your language brings to the table, your language really isn't worth learning. And if your language brings more important ideas to the table, then it would be a shame for people to never make it to those ideas because they got bored learning unimportant syntax ideas.