Hodnotenie:
Momentálne nie sú žiadne recenzie čitateľov. Hodnotenie je založené na 2 hlasoch.
Understanding Programming Languages
Táto kniha sa zaoberá opisom významu programovacích jazykov. Autor učí zručnosti písania sémantických opisov ako efektívneho spôsobu pochopenia vlastností jazyka. Hoci kompilátor alebo interpret ponúka určitú formu formálneho opisu jazyka, nie je to niečo, čo sa dá použiť ako základ pre uvažovanie o tomto jazyku, ani nemôže slúžiť ako definícia samotného programovacieho jazyka, pretože ten musí umožňovať rôzne implementácie. Napísaním formálnej sémantiky jazyka môže návrhár získať oveľa kratší opis a rozlíšiť, analyzovať a zaznamenať návrhové voľby.
Na začiatku knihy autor uvádza jednoduchý zápis, metajazyk, ktorý sa používa na zaznamenávanie opisov sémantiky jazykov. V praktickom prístupe sa zaoberá desiatkami problémov, ktoré sa vyskytujú v súčasných programovacích jazykoch, a kľúčovými technikami, ktoré treba ovládať, aby bolo možné zapísať požadované formálne sémantické opisy. Kniha sa uzatvára diskusiou o ôsmich kľúčových výzvach: vymedzenie jazyka (konkrétna reprezentácia), vymedzenie abstraktného obsahu jazyka, záznam sémantiky (deterministické jazyky), operačná sémantika (nedeterminizmus), kontextová závislosť, modelovanie zdieľania, modelovanie súbežnosti a modelovanie výstupov.
Obsah je testovaný v triede a je vhodný pre posledný ročník bakalárskeho a postgraduálneho štúdia. Je vhodná aj pre všetkých projektantov, ktorí chcú pochopiť jazyky na hlbokej úrovni. Väčšina kapitol ponúka projekty, niektoré z nich pomerne pokročilé cvičenia, ktoré si vyžadujú kompletný opis jazykov, a kniha je v celom rozsahu podporená odkazmi na ďalšie čítanie a zdroje. Predpokladom je, že čitateľ by mal poznať aspoň jeden imperatívny jazyk vysokej úrovne a mať určité znalosti diskrétnej matematickej notácie pre logiku a teóriu množín.
© Book1 Group - všetky práva vyhradené.
Obsah tejto stránky nesmie byť kopírovaný ani použitý čiastočne alebo v celku bez písomného súhlasu vlastníka.
Posledná úprava: 2024.11.13 22:11 (GMT)