> On Jul 1, 2016, at 14:28 , Jens Alfke <j...@mooseyard.com> wrote: > > Sure you can. It’s easy to tell that it calls the instance method, because if > it were calling the class method there would have to be a “Foo.” in front of > it.
I'm saying you can't tell what was *intended*, at least, not without knowing about this particular idiosyncrasy of the language. But someone coming from C++ (and I imagine there are many), might not notice this without a compiler warning. Now, if in this case, you had to be specific (either Foo. or self.), it might be okay. But I certainly would not make the assumption that the author didn't want to call the class method, and if I made the mistake in coding it, I would never know that's why, if it failed in some subtle way. > You’re first arguing that class-method calls should have the same syntax as > instance-method calls, and then complaining that having class and instance > methods with the same name is ambiguous … but the reason for the ambiguity is > because they’d be hard to tell apart using your proposed syntax. That’s not > coherent. I'm saying first and foremost that it should not be allowed to have a class and an instance method with the same name. That should just be a compile-time error. Second, I'm saying that you should be able to call a class method on an instance. -- Rick Mann rm...@latencyzero.com _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users