> On Jul 29, 2014, at 00:14, Maciej Stachowiak <m...@apple.com> wrote:
> 
> 
>> On Jul 28, 2014, at 8:44 PM, David Farler <dfar...@apple.com> wrote:
>> 
>>> On Jul 28, 2014, at 17:10, Ryosuke Niwa <rn...@webkit.org> wrote:
>>> 
>> 
>>> In particular see Maciej's response in 
>>> https://lists.webkit.org/pipermail/webkit-dev/2011-December/018865.html.
>> 
>> From the second e-mail:
>> 
>> "In conclusion, I think we should be very hesitant to introduce new 
>> languages for tools unless there are massive benefits that cannot be 
>> achieved with any of the languages that the WebKit project already uses.”
>> 
>> I myself am hesitant, hence the e-mail, but I think there is more to the 
>> picture here regarding the two languages which I outline below.
> 
> I think Swift is worth considering, but I think my argument in that email 
> still holds. Any new language added increases the number of languages you 
> have to potentially understand to work on WebKit, a number which is already 
> quite high (C, C++, Objective-C, Objective-C++, Perl, Python, Ruby, shell 
> scripts, probably others).
> 
> I feel like there’s not a great basis for approving of Swift when I objected 
> to Go, so for consistency’s sake I have to at least mildly object.
> 
>> For everyday automation tasks, I agree that we should continue to converge 
>> on Python because of its coverage across platforms, one-way-to-do-it-ness, 
>> strong style guidelines, large standard library, popularity, easy to learn, 
>> etc. It’s one of my goals to do just that and create a strong, unified, 
>> hackable, well-documented tools platform. I wouldn't advocate that 
>> automation be written in Swift.
> 
> Why would this tool be an exception to the general approach of using Python 
> for tools? Is it just because of the bindings to the CoreSimulator framework? 
> Would ObjC be your only alternative? I have a hard time understanding the 
> rest of your message because it’s all about comparing Objective-C to Swift, 
> but we don’t normally use ObjC as a tools language.
> 
> [snip]

In this particular case, Obj-C is the only alternative. I originally started 
this effort with PyObjC and after discussing it more with the framework's 
author I was sufficiently convinced it wouldn't be a good idea after some 
technical problems.

> 
>> Fine, twist my arm. :) In comparison to Objective-C, I don’t think it’s a 
>> stretch to think of these as major achievements:
>> 
>> - Modern type inference (although it could’ve gone a few steps further, IMO)
>> - Static types
>> - Sum types
>> - Enforced optional/maybe type
>> - Promotion of immutability
>> - Safer usage or downright omission of pointers
>> - Better numeric type conversion (IMO)
>> - Enforced initialization of objects
>> - Nice Unicode string primitives
>> - Low resistance to reasonable functional programming patterns
>> - Generics with constraints
>> - Pretty fast
>> - Terse syntax
>> - String interpolation with expressions
>> - No class prefixes needed
> 
> Why is Objective-C the relevant point of comparison here? We don’t use much 
> Obj-C in WebKit. It’s basically limited to the glue needed to be a public 
> framework on OS X and iOS, and to call system APIs that are only offered in 
> Obj-C, often mingled with C++ code. Unfortunately it’s not possible at this 
> time to replace Obj-C with Swift for either of these uses. I do think it is 
> possible that someday Swift will support that and that WebKit would likely 
> make use of it.
> 
> Also worth noting: anyone could make a similarly long list of bullet points 
> for their preferred language of choice. It would be a bad precedent to accept 
> such an argument or we’ll end up with even more different programming 
> languages used for our tools.
> 
> Cheers,
> Maciej

OK. It sounds like there isn't enough interest so I will rework the patch.

Thanks,
David
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to