UnicodeString Implementations. ESUG 2024, Henrik Sperre Johansen

esug 22 views 10 slides Sep 10, 2024
Slide 1
Slide 1 of 10
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10

About This Presentation

Talk from ESUG 2024

UnicodeString Implementations

PDF: http://archive.esug.org/ESUG2024/day2/02-Unicode-Henry.pdf


Slide Content

Q instantiations

Qinstantiations

UnicodeString Implementations

Henrik Sperre Johansen
Developer

iszhiohansenGinsanons com

Topics

o Unicode
o Implementations Overview
© Implementation Details

Qinstantiations

Unicode

o Character set
Encoding
Normalization
Equality

And more!

0.00 O

Qinstantiations

UnicodeString Overview

Pharo UTF-32 Codepoint Squeak v3 Latin 1
: . svenvc/ à
Cuis UTF-8 Codepoint UTF8String Latin 9

" . System
VAST UTF-8 Grapheme Rust / Swift locale

Qinstantiations

Equality

o Precomposed vs combining marks
o Multiple combining marks

o Normalized forms
o Case-insensitivity

Qinstantiations

Hashing

o Consistent with equality
o Consistent with single-byte strings

PA Pet | om | ue

Pharo stringHash: stringHash: stringHash:
Cuis primitiveStringHash + skip Convert to byteString primitiveStringHash + skip
optimisation Then same as ascii optimisation
VAST StringHash primitive core lo EsString seahash
en same as ascii

Qinstantiations

Rendering

o Pharo - FreeType2 library + embedded fonts
o Cuis — VectorCanvas + freetype parser + bundled fonts
o VAST - System rendering

Qinstantiations

O instantiations

Questions?

Henrik Sperre Johansen

Developer

igg'iohan sn instant com

Contact

General Inquiry
[email protected]

Sales
[email protected]

VAST Support Portal
vast-
support.instantiations.com

North America, Toll Free
855 476 2558

International
+1 503 263 0058

ar pau en Ron ne nine Ua See pon Tama Toons
ana nn we pope) ster AN ua Company podia o Lew ns ol paras O)
‘sare ore uso einen purses Vena Des anos Daria nd ran nn ap een