I'm not sure where you're reading that Chris thinks the current design reaches the stated aims to his satisfaction.
Again, I agree with the stated design goals for static/dynamic dispatch, but I don't think they've been met. On Fri, Mar 24, 2017 at 22:23 Drew Crawford <[email protected]> wrote: > > > > On March 24, 2017 at 10:11:07 PM, Xiaodi Wu ([email protected]) wrote: > > I agree absolutely with those aims: very predictable performance, > expressive and clean model, simplified learning and common cases. I'm > arguing that the giant table of dispatch rules (see: > http://raizlabscom-wpengine.netdna-ssl.com/dev/wp-content/uploads/sites/10/2016/12/Summary-3.png) > does > not reach that goal. > > But clattner believes it does. This is clearer in his original, which is > why I quoted it: > > predictable performance model (someone writing a bootloader or firmware > can stick to using Swift structs and have a simple guarantee of no dynamic > overhead or runtime dependence) > > ("predictable performance" to clattner means "value types are direct") > > while also providing an expressive and clean high level programming model > - simplifying learning and the common case where programmers don’t care to > count cycles. > > ("simplifying the learning" to clattner means that the programming model > appears dynamic and the real performance characteristic is hidden.) > > We know (because clattner told us here) what the design goal of Swift is > with respect to static/dynamic dispatch. You may not agree with it, but > that is another issue. >
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
