On March 24, 2017 at 10:11:07 PM, Xiaodi Wu (xiaodi...@gmail.com) 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
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to