Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Środowiskopracy
19
Językiinterpretowane.
Wichprzypadkurolępośrednikamiędzypro-
gramistąaprocesorempełniniekompilator,którygenerujejednorazowociąg
instrukcjiwjęzykumaszynowym,alesamodzielnyinterpreter,niezbędnydo
każdorazowegouruchomieniaprogramu.Ten-gdydostarczamymukodna-
pisanywodpowiednimjęzykuinterpretowanym-odczytujeiwykonujego
wczasierzeczywistym.Wprowadzeniestałegopośrednikamiędzyprogram
aprocesorpowoduje,żeaplikacjenapisanewjęzykachinterpretowanych
zwyklewolniejszeniżichodpowiednikinapisanewjęzykachkompilowanych
Jesttokosztwygody.PozaLua,dogrupyjęzykówinterpretowanychzaliczamy
takżejęzyki,takiejak:Python,Ruby,php,czyJavaScript.
Podziałnajęzykiinterpretowaneikompilowaneniejestniestetysztywny.
Możnadośćłatwoznaleźćprzykładytakichjęzykówprogramowania,które
jednocześniekompilowaneiinterpretowaneoraztakich,któretrudnobyłoby
zakwalifikowaćdoktórejkolwiekztychgrup.Tezagadnieniawykraczająjednak
znaczącopozazakrestejksiążki.
a
Wdawnychczasachróżneprocesorymogłyrozumiećzupełnieróżnietesameciągiliczb
(instrukcji).Postępującaodlatstandaryzacjaspowodowała,żeobecniewiększośćprocesorów
współdzielimiędzysobąuniwersalnezestawyrozkazów.Nieoznaczatojednak,żerazskompi-
lowanyprogrambędziemymoglizpowodzeniemuruchomićnakażdymkomputerze.Należy
wziąćtupoduwagęfakt,żeprogramjesttaknaprawdęuruchamianyprzezsystemoperacyjny,
asamplikwykonywalnyskładasięzwyklenietylkozinstrukcjiprzeznaczonychdlaprocesora,
aletakżedlasystemuoperacyjnego.Tomiędzyinnymiztegopowoduwielegotowychplików
wykonywalnych(dostępnychnp.winternecie)kategoryzowanychjestnietylkozewzględu
naarchitekturęprocesora(np.x86lubamd64),aletakżezewzględunasystemoperacyjny,
dlaktóregoprzeznaczone.
b
Wprzypadkuniektórychjęzykówinterpretowanych,wtymLua,jestmożliwewcześniejsze
przetworzeniekoduźródłowegoprzezprogram,którynazywamyprekompilatorem.Przekształ-
caonoryginalnykodprogramudopostacipośredniej,międzywyjściowymkodemakodem
maszynowym,któratomożebyćwykonanaprzezinterpreterowielewydajniej.
InterpreterLuajestprogramemnapisanymcałkowiciewjęzykuansic
.Dziś
trudnojestznaleźćśrodowisko,dlaktóregonieistniejekompilatorjęzykaansic,po-
nieważjęzyktenjestwyjątkowopopularnyipowszechny.Cowięcej,wiele
systemów
2
Błyskawicznywzrostpopularnościjęzykacwlatach1973-1983sprawił,żekoniecznestałosięjego
uporządkowanie.W1983r.AmericanNationalStandardsInstitute(ansi)powołałkomisję,której
postawionozacelopracowaniezestawustandardówdlajęzykac.Pracezakończyłysięw1989r.,aich
efektembyłopowstaniejęzykaansic.Wkolejnymrokustandardbliźniaczydotegoautorstwaansi
zostałratyfikowanyprzezMiędzynarodowąOrganizacjęNormalizacyjną(iso).Odtamtegoczasu
każdazinstytucjiwprowadzaraznakilkalatskromnerozszerzeniadozarządzanegoprzezsiebie
dokumentuiadaptujetewprowadzoneprzezdrugązorganizacji.Dziświęcokreśleniaansiciisoc
odnosząsięwłaściwiedotegosamego,aci,którzyniechcąsięmieszaćwsprawypolityczneużywają
poprostunazwynStandardc”
.