
On Wed, Nov 10, 2010 at 11:08 AM, Lauri Alanko
Plain ad hoc overloading might or might not be a sensible addition to Haskell, but please at least drop the "x .f" syntax, it's a pointless hack that makes the lexical status of "." even more difficult than it currently is. After all, one can simply define e.g. "x .$ f = f x" if postfix application is needed.
Do you have a better suggestion? The arguments for . & postfix application: - Standard practice in other languages - feels similar to qualified names - postfix application is really useful for IDEs Arguments against: - . is used for too much stuff already - postfix application isn't really Haskelly I personally think that the arguments in favor are pretty strong. As you've mentioned, regular ad-hoc overloading does not make a ton of sense in Haskell; function types are complicated enough that too much ambiguity is introduced and inference becomes very difficult. But I see a lot of value in locally saying 'this particular invocation should be ad-hoc overloaded' for common functions like 'length', 'map', 'lookup', etc. -- ryan