Interpreter

Interpreter to program komputerowy, którego zadaniem jest analiza kodu źródłowego jakiegoś programu, gry lub aplikacji, a dopiero przeanalizowane fragmenty kodu są wykonywane. Proces analizy kodu źródłowego różni się od kompilacji, ponieważ podczas analizowania nie jest wykonywany wejściowy program, ale jest on tłumaczony do kodu maszynowego lub pośredniego, który maszyna może bez problemu używać, następnie jest on zapisywany do pliku, aby w późniejszych etapach można było go wykonać. Interpreter wykonuje swoje działania o wiele wolniej niż w kompilatory czy translatory i zajmuje on o wiele więcej zasobów systemowych, niż samo wykonanie kodu skompilowanego, jednak może zająć on relatywnie o wiele mniej czasu niż w przypadku kompilacji i uruchomienia. Jest on zazwyczaj używany, kiedy cykl edycja-interpretacja-debugowanie jest o wiele krótsze niż edycja-kompilacja-uruchomienie-debugowanie, co zmniejsza czas testowania kodu źródłowego programu i zaoszczędza programiście czasu, który może wykorzystać na zmiany w późniejszym czasie. Interpretacja zajmuje o wiele więcej czasu niż uruchomienie skompilowanego kodu, dzieje się tak, ponieważ interpreter musi przeanalizować każdy fragment kodu i wykonać akcję, którą opisu analizowany kod, a kompilacja polega jedynie na wykonaniu akcji. Implementacje, które są określane mianem pełnych interpretatorów wykonują wielokrotnie tą sama akcję, ponieważ kod może wymagać wielokrotnej analizy. Jest to tak zwany „koszt interpretacji”. Także sam dostęp do zmiennych jest o wiele wolniejszy w interpreterze.

About the author