I mean, M-expression was proposed right from the start.
Then there is nothing special about having the brackets around. To start with, text can be just as readable:
( + 1 2 )
do plus 1 2 go
And one can use stack base syntax, or define a static default arity to infix notation, example two, so `times plus 1 2 3` is not ambiguous and is really clearly like (1+2)*3 with such a convention. Then you can shift arity with reserved word so `unary plus 1` is like `+1` or `arity 5 action one two three four`, or going back to explicit marker like `(` and `)` or `do` and `go` to group stuffs without explicitly quantified numbering.