Chyba v triedeni cs_CZ & sk_SK

Michal Kubecek mike na mk-sys.cz
Čtvrtek Květen 29 10:30:15 CEST 2003


On Thu, May 29, 2003 at 08:10:49AM +0200, Ludek Finstrle wrote:

Z celého vašeho příspěvku mám pocit, že jste z tohoto threadu nic
nečetl a reagujete až na ten můj poslední. Následkem toho vznášíte
námitky, které zde už byly (několikrát) zodpovězeny. Přečtěte si,
prosím, i ty ostatní příspěvky.

> Toto neni problem ceskeho razeni, ale ASCCI A principu razeni DBF souboru.
> Takze netusim, proc to sem tahate.

Protože dotaz zněl, zda mi to už dlouho vadí. Proto jsem se pokusil
přiblížit, jak dlouho už mi to vadí.

> 
> > i když implementuji libůstky jazykovědců jako je písmeno-nepísmeno 'ch'
> 
> Doufam, ze budete i pro to, aby se ch zacalo cist "c''h' a nikoli 'ch'
> jak je tomu doted.

K tomu není důvod. Jsem pouze pro to, aby porovnávání řetězců, což je
operace, která se týká výhradně psané formy jazyka, vycházela z psané
formy. Současná norma, vycházející ve své většině (ale ne úplně)
z mluvené formy, přináší řadu problémů.

> > porovnávání řetězců pracuje s jakousi skrytou informací, která není
> > v těch řetězcích obsažena.
> 
> Mno a rikaji vam neco slova syntaxe a semantika? Tak se nad tim prosim
> zamyslete a pak si zacnete stezovat treba i na C, kde + muze znamenat
> ruzne operace zavisle na pretizeni. A o podobne veci jde i v cz razeni.

Asi nechápete ten rozdíl. V případě jazyka C existuje jednoznačný
algoritmus, jak ze zdrojového kódu (je-li syntakticky správný) poznat,
co který znak '+' znamená. I když mám pocit, že myslíte spíš C++ než C,
ale to na věci nic nemění. Na rozdíl od toho české řazení podle normy
požaduje, aby při porovnávání řetězců byla brána v úvahu i informace
o významu, která v těch řetězcích obsažena není.

> Co v soucasnych pravidlech vidite mlhave? Sice nejsou trivialne
> implementovatelne pocitacove, ale to je vec jina. Ostatne pro pocitacove
> zpracovani ve vetsine pripadu bohate staci jejich rozumne priblizeni.

Ta pravidla vůbec nejsou realizovatelná algoritmem, a tedy ani počítačem.
To je zásadní problém. Druhým problémem je fakt, že pokud se rozhodneme
implementovat "rozumné přiblížení", není jasně stanoveno, které z nich
(a každý z nás může za "rozumné" považovat něco úplně jiného) je to správné.
Za třetí považuji za krajně nevhodné, aby porovnání dvou řetězců záviselo
na tom, zda ho provádí člověk nebo počítač.

> Jinak treba ve sportu jsou pravidla naprosto jasna, ale jejich vyklad
> je na mnoho stran a to je teprve super se v tom vyznat.

Pravidla ve sportu už sama v sobě obsahují informaci o tom, kdo v které
konkrétní situaci provádí jejich výklad. Stejně jako například zákony
nemohou být exaktní a zcela nezávislá na výkladu. Naproti tomu pravidla
pro porovnávání řetězců taková velice snadno být mohou a neexistuje
žádný praktický důvod, proč by taková být neměla.

> Pane, uvedomte si prosim, ze jazykovedci tu byli davno predtim, nez
> byl vyvinut prvni pocitac. Nejsem jednim z nich, ale celkem by me
> nastvalo, kdybych neco takoveho slysel od cloveka, ktery o tom prd
> vi.

To, že tu byli dávno před počítači, zdaleka neznamená, že dělají všechno
správně. A pokud nejsou pravidla pro porovnání řetězců schopni formulovat
tak, aby byla jasně formulovaná, jednoznačně vyložitelná a nepracovala
se skrytou informací, pak svou práci dělají špatně. Bez ohledu na to,
zda ji dělají deset dnů, deset let nebo deset století. To, že je něco
starší, neznamená nutně, že je to lepší.

> A nebo si zajdete do komunity normalnich uzivatelu a poslouchejte jejich
> nazory na programatory. Treba si neco o svete uvedomite a prestanete
> pronaset podobne vyroky (zvlaste posledni odstavec).

Ty názory na programátory vycházejí obvykle z negativních zkušeností
s výsledky jejich práce. Někdy jsou přehnané a vycházejí z nepochopení
(počítač dělá to, o co ho požádáte, ne to, co po něm chcete), ale často
jsou zcela na místě a nezbývá mi než s nimi souhlasit.

                                                        Michal Kubeček


Další informace o konferenci Linux