Hlavní navigace

Názor k článku Programovací jazyk Ada pro úplné začátečníky od Radek Miček - A kdo mel v rukach par zacateciku vi,...

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

    Radek Miček (neregistrovaný) ---.net.upcbroadband.cz

    A kdo mel v rukach par zacateciku vi, ze ze zacatku jsou radi za kazdy cyklus, co zvladnou, a to, ze za par let mozna potkaji jazyky, ktere se na veci divaji hodne jinak, je jedno - maji problem prezit pristich par tydnu

    S tím souhlasím, také nenavrhuji Coq nebo něco podobného, ale navrhuji Racket a Standard ML, což jsou decentní jazyky.

    Bud jak bud to nic nemeni na tom, ze Python to udelal vzhledem k ucelu a dobe vzniku vicemene dobre.

    Jak jsem zmínil výše, vadí mi i takové drobnosti jako (něco z toho platí i pro Python):

    • vestavěná "rovnost" není ekvivalence a v jazycích s podtypovým polymorfismem není úpně snadné rovnost implementovat tak, aby se chovala jako ekvivalence (viz triky jako canEqual),
    • standardem je referenční rovnost (místo strukturální) a vedlejší efekty (i vytvoření objektu je vedlejší efekt),
    • do proměnných jde přiřazovat (nechovají se jako matematické proměnné),
    • aritmetika s čísly v plovoucí řádové čárce je složitá (např. aby člověk správně implementoval funkci počítající průměr, musí vědět něco o numerické stabilitě),
    • chování kódu nejde zjistit bez použití hex editoru nebo spuštění (např. Java, stačí vzít vhodný Unicode identifikátor a jednou ho normalizovat do NFD, podruhé do NFC a máte dva různé identifikátory, co vypadají úplně stejně).

    Dříve jsem si myslel, že Python je dobrý jazyk (ale moc jsem se o něj nikdy nezajímal), pak mi dal JS1 následující odkazy a už si to nemyslím:

    Jazyk Standard ML vznikl (1990, revize 1997) dříve než Python a přesto mi přijde mnohem lépe navržený. Viz například formální specifikace The Definition of Standard ML, Revised a seznam chyb Defects in the Revised Definition of Standard ML.

    Mj. z výše zmíněných nedostatků řeší Standard ML vše kromě "aritmetika s čísly v plovoucí řádové čárce je složitá".

    Tak urcite. Ted se muzeme zacit trumfovat delkou brad akademickych autoru, kteri tvrdi ruzne veci. ja si mohu vytahnout trebas Erika Meijera.

    Tohle je o tom, že po roce 1990 vznikl standardní způsob, jak specifikovat programovací jazyky (přesněji jejich core kalkuly) a jejich typové systémy, který dnes drtivá většina lidí z oboru používá. Osobně nevidím žádný důvod, proč vytvářet definice, které jdou buď proti tomuto standardnímu způsobu (dynamické typování), nebo nemají žádný přesný význam (např. silné typování).

    Vytáhněte Erika Meijera.