> On Apr 15, 2016, at 3:19 AM, Taras Zakharko <[email protected]> wrote: > > True, that makes sense. I was simply trying to explore different > possibilities of how these things could be represented in the syntax. What > about #type(d) for static (declaration) type and type(v) for dynamic > (value/instance) type? Or would that be potentially confusing as well? > > The reason why I dislike .dynamicType etc. declarations is because they > introduce another ‘magic’ properties to instances. I think that this > functionality is very important and that it should be represented by the > standard library instead. If Swift had a universal base type, one could say > that the magic properties are just part of that base type (and by extension, > part of the standard library), however, right now, they are injected by the > compiler. I’d rather have a standard function like > > type: (Any)->AnyType > > for this purpose. Hell, I would even say that dynamicType(self) is an > improvement over self.dynamicType :)
The way I see it, my proposed change reduces the total amount of magic. Associated types *are* members of their parent type, and `Self` is a special case of an associated type. -Joe _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
