Bits of Unicode
Mark Davis - IBM Centre for Java Technology SV
Intended Audience: |
Manager, Software Engineer |
Session Level: |
Advanced |
Supporting Unicode in small-memory environments presents some interesting challenges,
which are only increased with the extension to surrogate characters. No matter which
encoding is used to represent Unicode, 1,114,111 different codepoints are a lot to
handle. This paper discussed tricks and strategems for associating information with
Unicode characters that allows implemenations to minimize the impact on memory. The
discussion includes: squeezing out bits for Unicode properties, effective use of trie
structures, inversion lists, compact character mapping tables, and others.
Code that supplies and uses these structures is part of ICU, the Java/C/C++ open-source
Unicode enablement libraries from IBM, and can be used to apply to other domains.
|