Interpret (software): Porovnání verzí

Smazaný obsah Přidaný obsah
m link fix
JAnDbot (diskuse | příspěvky)
m Robot: přidáno {{Autoritní data}}; kosmetické úpravy
Řádek 31:
 
== Interpret abstraktního syntaktického stromu ==
Mimo možnosti interpretace a kompilace lze využít i jiný přístup, a to transformace zdrojového kódu do optimálního abstraktního syntaktického stromu (''abstract syntax tree'' – AST), a následné řízení výkonu programu podle této struktury. V tomto přístupu je třeba analyzovat každou větu pouze jednou. Hlavní výhodu oproti bytekódové interpretaci je, že AST udržuje globální program, strukturu a vztahy mezi instrukcemi (které se v bytekódové reprezentaci ztrácí) a poskytuje kompaktnější reprezentaci.
 
Proto byl navržen AST jako lepší průběžný formát pro ''just-in-time'' kompilátory než bytekód. Rovněž umožňuje provádět lepší analýzu za běhu. Na interpretu [[Java (programovací jazyk)|Javy]] založeném na AST bylo dokázáno, že je rychlejší než obdobné interprety bytekódu, díky této silnější optimalizaci dovoluje mít kompletní strukturu programu, která je k dispozici již v průběhu spuštění.
Řádek 44:
Termín „interpret“ měl trochu jiný význam u elektromechanických výpočetních strojů, které se používaly před příchodem elektronických strojů po roce [[1940]]. V té době se prováděly sofistikované výpočty nad velkým množstvím dat (například sčítání lidu v [[Spojené státy americké|USA]] v roce [[1890]]) s pomocí [[Děrný štítek|děrných štítků]], které se ručně předávaly podle naplánovaného procesu mezi různými specializovanými stroji. Převod z děrných štítků do čitelné podoby zajišťovaly například stroje Numerický interpret [[IBM 550]] ({{Vjazyce|en}} {{Cizojazyčně|en|Numeric Interpreter}}, rok [[1930]]) a Znakový interpret [[IBM 557]] ({{Vjazyce|en}} {{Cizojazyčně|en|Alphabetic Interpreter}}, rok [[1954]]).
 
První elektronické počítače (tzv. [[mainframe]]) měly velmi malý výpočetní výkon, málo paměti a velmi jednoduché [[Operačníoperační systém|operační systémy]]y s [[Dávkové zpracování|dávkovým zpracováním]] úloh, takže bylo nemožné mít v paměti počítače zároveň interpret a prováděný program a využívat [[multitasking]]. Proto se v té době používaly [[Překladač|kompilátory]] a kompilované programovací jazyky, kdy bylo možné v prvním kroku nejprve ze zdrojového kódu vytvořit spustitelný program ve [[Strojový kód|strojovém kódu]] a ten teprve pak samostatně spustit a vykonat. Přesto obsahovaly tyto první počítače interprety [[Skript (program)|skriptovacích]] jazyků, které interpretovaly a řídily zpracování dávkových úloh (například [[Job Control Language]], [[DIGITAL Command Language]]). Vzhledem k výkonu tehdejších počítačů ale byl zápis dávek poměrně obtížný a komplikovaný, protože se kladl důraz na snadnou a rychlou interpretaci zápisu počítačem a ne na pohodlí uživatele.
 
== Reference ==
Řádek 53:
 
{{Pahýl}}
{{Autoritní data}}
 
[[Kategorie:Programování]]