On Wed, 2004-03-31 at 16:23, Phillip J. Eby wrote: > >The current system with no syntax is equally usable, what's gained > >functionally? > > It's not equally usable. It is 1) considerably more verbose, particularly > in Bob's use case of long function names, and 2) hard to spot by a reader > who's skimming to get an overview of a class or module. Both true. Perhaps I should have said functionally equal. The proposed syntax is more usable from a syntax perspective, I agree, but offers no more "use" once you have the object in hand, so to speak. The aesthetics is another matter I've already voiced my opinion on. > >Another discussion point occurred to me regarding interfaces and > >projects that use them heavily like Zope, Twisted, PEAK etc. Has the > >decorator syntax as proposed been evaluated in the light of these > >interfaces (and any future native language support for them), whose > >methods have no body to interpose between the definition and decorators > >as they exist now? I've seen the "Large Body" argument use several > >times in defense of the decorator syntax being before or above the > >definition. > > I have seen virtually no use of decorators on interface methods in the > frameworks you mention. In fact, I can't recall ever having seen a single > use of decorators on interface methods. That's probably simply because the > cost of using decorators is too high to waste on anything that's not part > of the implementation, I think there must be *some* decorators valid for interfaces. What about proposed decorators like "synchronized"? Are these part of the interface? Or something equivalent to Java's "throws", arguably a decoration and arguably part of a method's interface. What about decorations that can *never* be used in an interface, like "classmethod"? Would an error be raised if you tried to decorate an interface method with a classmethod decorator? I don't think any of these things refute or validate the need for special syntax, I just wonder if it's been thought about enough, and that goes way beyond the syntax. -Michel
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4