
I don't really like $ from an editor perspective though (tooling has to become aware of a single function when performing refactorings), so anything that helps reduce how prolific that operator is is a win in my book!
Can you please explain what you mean by this? Is there something more subtle that $ being a low fixity operator? Which specific problems does it cause tooling? Are you referring to the fact that there are problems because $ == id and makes tooling account for two cases when looking for refactorings? (I'm thinking of hlint here). (FWIW, haskell-src-exts tries to fiddle with the AST to account for fixity after parsing but the GHC parser does not, it happens during renaming. There is a pure version here[1] if anyone else is in need of this feature). Thanks, Matt