New std.uni: ready for more beating

Dmitry Olshansky dmitry.olsh at gmail.com
Tue Jan 29 13:52:20 PST 2013


Recap:
During a couple of rounds of the informal review new std.uni had its 
docs happily destroyed, and later re-written based on the feedback.

Notable changes:

- Fixed a couple of latent bugs (ouch!)

- unicode.xyz helper was redesigned to have a clear path for extension 
to properties other then binary ones. For instance to get all of code 
points with hangul syllable type L (leading Jamo):

auto leadingJamo = unicode.hangulSyllableType("L");

- Squeezed extra 31Kb slack from object-file size (32 bits, more on 64). 
Now all of the packed tables occupy around 350Kb (32bits) and
If you happen to know some tricks to reduce object file size (and in 
turn the executable size), please chime in.

Code & benchmark: https://github.com/blackwhale/gsoc-bench-2012

Docs: http://blackwhale.github.com/phobos/uni.html
(looks far better without the JS jump-table)

It's a standalone module at the moment. To use in place of current 
std.uni replace 'std.uni'->'uni' in your programs and compare the 
results. Make sure that both uni and unicode_tables modules are linked 
in, rdmd can take care of this dependency.

P.S. Time to go for the formal review?

P.P.S. Got to catch some sleep ...
-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list