"Peter Alexander" <peter.alexander...@gmail.com> wrote in message news:nvvuxboigxxfdqfhy...@forum.dlang.org... > > To be honest, I don't like the idea of member functions at all. Having two > syntaxes for calling a function is the core problem, and UFCS is just an > extra complication on top of it to try and mitigate the original problem. > > f(x) ---> x.f() is not progress in language design. [...] > I'm serious. I don't like overloaded syntax. foo.bar shouldn't also mean > (*foo).bar -- it causes confusion and introduces ambiguities when either > could work. Combine this with opDispatch, UFCS and function overloading > and your in for some nasty headaches. [...] > > Glancing at that code, it looks like foo has two member variables. It is > also not clear that each access involves a hash-table lookup.
It sounds like you just simply don't like abstractions. I can understand that (although I don't agree with it), but it always puzzles me why such people even try to use high-level langauges at all instead of just binary machine code. And for the record, I've *never* seen anyone confused by foo.bar syntax being used on reference types.