I also Julia, but agree with all these points.
And I'll add one more:
It is difficult to chain a value through a series of function calls. Meaning you can't do something like `a.b().c().d().e()`. You either have to store intermediate results in variables, call it like `e(d(c(b(a))))` which IMO is less readable, or do something like this:
a |> x -> b(x) |> x-> c(x) |> x -> d(x) | x -> e(x)
there is some hope of this getting improving in the future, but in the present, it bugs me.