Vlákno názorů k článku OpenAI má zájem o Chrome, vylepšování budoucí KDE Plasmy 6.4.0 pokračuje od ce4aser - Ked citam komentare musim aj ja pridat komentar. Zoberme...

  • Článek je starý, nové názory již nelze přidávat.
  • 28. 4. 2025 5:30

    ce4aser

    Ked citam komentare musim aj ja pridat komentar.

    Zoberme si to po poriadku. Ked si zobereme programovacie jazyky C, C++, C#, Golang, Rust, Python, Java, Javascript, LUA, PHP, Ruby, Perl, TypeScript atd atd

    Si mozete vsimnut ze to je case-sensitive.

    Nevidim ani jeden dovod, preco si komplikovat u nazovoch suborov a adresarov robit zbytocnu robotu a pridavanie dalsieho vektoru moznych chyb, bezpecnostnych rizik tym aby som mal nazvy suborov a adresarov case-insensitive. Je to nieco co je uplne zbytocne a nelogicke.

    Vratme sa do minulosti. Vratme sa do doby kedy sme mali len ASCI a to ASCI bez diakritiky cize len 0-127 . Tam sa to riesilo jednoducho tam si len jeden u jedneho bitu zmenil hodnotu. Cize podmienka ORD > 64 and ORD < 91 and ORD > 96 and and ORD < 123 , tymto si podmenil a-zA-Z.

    Nasledne siesty bit urcoval velkost pismena. Ak bola logicka 1 tak male pismeno aj 0 tak velke pismeno.

    Takze takze nebol problem spravit podmenku ORD > 64 and ORD < 96 a nasledne bitovovy operaciu alebo jednoducho pricitame 32 cize chr(ord(b)+32) kde b je pismeno. Toto si potom daj do cyklu. Takto jednoducho sa riesilo kedysi ako v pythone string.lowercase()

    U starych suborovych systemov kde si bol na nazov suboru limitovany ASCI 0-127 tak to nevadilo. Ale kedze mozeme do nazvu suboru pridat znaky z Unicode tak to problem.

    Dnes? To uz je alchymia. Uz sa nemozes spolahnut rozdielom 32 (jedneho bitu) tato vlastnost sa nezdedila. Okrem zpetnej kompaktibility A-Za-z tam ti plati.

    Musis mat databazu pomocou ktoreho robis prevod. To ale neni problem. Dnes kedy uz nemusime pocitat kazdy jeden byte, kazdy jeden strojovy cyklus toto nevadi.

    Problem ale nastava ze existuju pismena s diakritikou, ktore nemaju svoj naprotivok vo vztahu (male - velke alebo naopak). Tak nikdy nespravis prevod spolahlivo. Na vacsinu pripadov ano, ale nie pre vsetky pripady.

    A to este nehovorim ze v unicode mame pisme ktore vyzeraju velmi podobne ako klasicke A-Za-z z asci ale maju svoj vlastny unicode a nemaju naprotivok. Cize aj sme prevod aproximovali na A-Za-z tak pri zpetnej transformaci sa nedostaneme na zaciatok. Cize stratime co za pismeno to bolo.

    a mohol by som este pisat dalej.

    Ale tu je jasne vidiet ze case-sensitive je akysi prezitok z minulosti u ktoreho sa zistilo ze to vytvara omnoho viacej problemov ako uzitku, obzvlast ked si v nekontrolovanom prostredi ako uzivatel a jeho pomenovanie a umoznenie do nazvov suborou cpat znaky z unicode.

  • 28. 4. 2025 20:42

    rrrado1

    To, že niektoré programovacie jazyky sú case sensitive ako súvisí s filesystémom? Názvy domén sú case insensitive a majú bližšie k filesystému ako programovacie jazyky. Súbory používajú normálni ľudia a dva súbory s rovnakým názvom spôsobia len problémy a diktovať niekomu názov súboru s špecifikovaním pri všetkých písmenách či sú veľké, alebo malé nie je úplne prakticé. Case sensitive súbory sú len vecou lenivosti, alebo neznalosti programátora, existujú knižnice ako ICU (príčetná implementácia FS musí predsa aj tak vedieť zložitejšie veci, aby vedela zoradiť názvy podľa abecedy) a ak pre nejaký znak neexistuje capital varianta, tak to predsa znamená, že s ním nie je žiaden problém, lebo ho netraba nijak transformovať.

  • 28. 4. 2025 22:50

    ce4aser

    Na to aby si to mohol pouzivat musi byt aj naprogramovane. To ze to ty neprogramujes neznamena ze to niekdo pre teba neprogramoval a mas program.

    Dalsia vec neexistuje jednoznacna transformacia v celom rozsahu male -> velke -> male

    napriklad:
    print('ß'.upper()) da na SS
    print('SS'.lower()) sa ss

    ß != ss

    Ako som pisal vznika zbytocny priestor na bugy a ked vdaka bugu pridas o data to ti uz bude vadit

    a toto co pisem je len ceresnicka na dorte kolko s tym je problemov a nemusi to byt.

    Tu nejde o prikazovani. Ale o chybach, bugoch, necakanych chovaniach , vektory utoku atd.

  • 29. 4. 2025 14:22

    rrrado1

    Zbytočne hľadáš problém, všetko musí niekto naprogramovať. Ako dokázali spraviť find -iname? Aj pri tých doménach to nejak museli vyriešiť. Na overenie jedinečnosti názvu súboru nepotrebuješ prevod veľké>malé>veľké. Stačí napr. hocičo>malé. A ešte aj z toho môžeš spraviť hash pre zrýchlenie nejakého indexu. Vektor útoku je akurát keď si spravíš skript RunMe, nastavíš mú práva na seba a potom niekto iný spraví Runme a omylom spustíš Runme.