Re: [swift-dev] Quick pitch: Change Linux’s string comparison to match Darwin’s

2017-07-31 Thread David Jones via swift-dev
Kitura does not mandate any particular distribution, but 14.04 is one of the distributions that we expect to support for some time. I did investigate what's required to build a Swift snapshot with a newer version of ICU on Linux. I was pleased to discover that of the support for doing so is alrea

Re: [swift-dev] Quick pitch: Change Linux’s string comparison to match Darwin’s

2017-07-27 Thread Michael Ilseman via swift-dev
The performance issues in Ubuntu 14.04 is not surprising. 14.04’s ICU version is ancient, relatively speaking (e.g. it predates both Swift and Unicode 7.0). Performance issues is not the only problem there, as Unicode semantics such as grapheme breaking has evolved dramatically since then. Out o

Re: [swift-dev] Quick pitch: Change Linux’s string comparison to match Darwin’s

2017-07-27 Thread David Jones via swift-dev
FWIW, here is an illustration of how much an optimization in this area would be worth to Kitura, running on Ubuntu 14.04 (where ICU 52 is particularly expensive when comparing ASCII strings [1]). The workload I used here is https://github.com/tbrand/which_is_the_fastest I have compiled Kitura 1.7.6

Re: [swift-dev] Quick pitch: Change Linux’s string comparison to match Darwin’s

2017-07-25 Thread Michael Ilseman via swift-dev
Unfortunately after some investigations and discussion, the situation seems to be more murky. This approach would break transitivity of String comparison on Linux, at least with any implementation of UCA using the normal collation weights. A < B, B < C should imply A < C. But, if both A and B ar