Issue 10566 - Implement Unicode Collation Algorithm (UCA)
Summary: Implement Unicode Collation Algorithm (UCA)
Status: NEW
Alias: None
Product: D
Classification: Unclassified
Component: phobos (show other issues)
Version: D2
Hardware: All All
: P4 enhancement
Assignee: No Owner
URL:
Keywords:
Depends on:
Blocks: 11911
  Show dependency treegraph
 
Reported: 2013-07-07 06:20 UTC by Dmitry Olshansky
Modified: 2024-12-01 16:18 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Dmitry Olshansky 2013-07-07 06:20:23 UTC
This should become another piece of std.uni functionality.
It is essential for applications such as databases and UI interfaces that try to produce natural (language and culture wise) sorting order, instead of some consistent but arbitrary.

Relevant technical report:
http://unicode.org/reports/tr10/
Comment 1 Philippe Cadieux-Pelletier 2014-06-24 07:17:30 UTC
Although Unicode support is definitely needed, implementing this in D is quite ambitious. Perhaps we could instead simply make a wrapper around either OS API or C++ std locale. Shouldn't be that hard to port code from boost::locale and at least D users would have something until TR10 is implemented natively in D (if ever considering the complexity!).
Comment 2 Richard (Rikki) Andrew Cattermole 2022-12-17 20:33:31 UTC
I've had a look at TR10, it doesn't look too bad.

The algorithm is more or less just four steps, and two of them are already implemented.

It is in the same league of work as normalization and the full casing algorithm. The former is implemented (dependency), and the latter we haven't got yet, but we will get that eventually.
Comment 3 dlangBugzillaToGithub 2024-12-01 16:18:12 UTC
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/phobos/issues/9609

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB