This is a thread about Racket, if you did not notice.
> Are you really arguing that implementing some other language is the way to go?
This is exactly what Lisps are about. You've got a nearly raw AST at the bottom (S-expressions) and then you build up a hierarchy of languages on top of it.
https://github.com/soegaard/minipascal
Secondly, even most Schemes allow to use [ ] and { } in addition to ( ).