Miksi vanhentuneet merkkilaskurit epäonnistuvat modernin Unicoden, emojien ja monikielisen tekstin kanssa
Ensimmäisen sukupolven verkkotyökalut, kuten 2010-luvun alussa rakennetut perinteiset merkkilaskurit, perustuvat JavaScriptin primitiiviseen `String.prototype.length`-ominaisuuteen. Koska JavaScript koodaa merkkijonot sisäisesti UTF-16-koodiyksiköillä, mikä tahansa Basic Multilingual Plane (BMP) -alueen ulkopuolinen merkki – mukaan lukien modernit emojit, matemaattiset symbolit ja harvinaiset CJK-ideografit – esitetään kahden koodiyksikön sijaisparina. Lisäksi yhdistelmäemojit, kuten perhekuvakkeet tai ihonvärimuuntimet, jotka on yhdistetty Zero-Width Joiner -merkeillä (`U+200D`), saattavat rekisteröityä vanhentuneissa laskureissa 5–11 merkiksi, mikä johtaa vääriin sosiaalisen median ja tietokannan pituuslukemiin.
Multinook ratkaisee tämän arkkitehtuurisen virheen toteuttamalla W3C- ja ECMA-402 `Intl.Segmenter` -standardin grafeemiklusteritasolla yhdessä UTF-8 `TextEncoder` -tavuvirtaanalysaattorin kanssa. Jokaista käyttäjän havaitsemaa merkkiä lasketaan sataprosenttisella tarkkuudella, ja samalla paljastetaan ohjelmistosuunnittelijoille ja teknisille kirjoittajille raa'at UTF-8-tavujälki- ja koodiyksikkömetriikat.

