Terminator – element składni w określonym języku programowania, kończący w kodzie źródłowym określoną jednostkę kodu, taką jak: instrukcja, moduł, program, pakiet, podprogram itd.
Rola terminatora Terminator w kodzie źródłowym pełni więc rolę ogranicznika zamykającego w tekście kolejne jednostki – zdania języka programowania. Użycie takiego elementu jest niezbędne, w celu umożliwienia podziału tekstu kodu źródłowego na konkretne, ustalone w składni danego języka, części – zdania, mające określone znaczenie (interpretację) w danym języku. Obrazowo, w uproszczeniu, można więc terminator porównać do znaku interpunkcyjnego – kropki kończącej zdanie, w języku naturalnym.
Oprócz swej podstawowej funkcji, terminator może pełnić równocześnie rolę separatora jednostek leksykalnych.
Terminator a separator W językach programowania, w zależności od przyjętej konwencji, stosuje się oprócz terminatorów, także separatory instrukcji. Te ostatnie, w odróżnieniu od terminatorów, jedynie rozdzielają kolejne, następujące po sobie instrukcje. Ostatnią instrukcję w ciągu instrukcji zawartych w danym bloku nie trzeba więc, w przeciwieństwie do terminatora, zamykać separatorem. Co więcej, użycie separatora za taką ostatnią instrukcją jest najczęściej traktowane jak utworzenie instrukcji pustej. Różnicę pomiędzy terminatorem a separatorem obrazuje poniższy przykład: Język Pascal – separator instrukcji Język C – terminator instrukcjibegin if a<0 then write('ujemna') else write('nieujemna'); a:=0 end{ if (a<0) printf("ujemna"); else printf("nieujemna"); a=0; }
W powyższym porównaniu widać separator (język Pascal) i terminator (język C), w tym konkretnym przypadku zapisywany jest za pomocą tego samego symbolu: średnik ";". W języku C, w którym stosuje się terminator instrukcji wymagane jest użycie terminatora po instrukcji wywołania funkcji printf przed słowem else i przed ogranicznikiem kończącym blok "}".
Z pracą (1) można podać, że zasada, iż każda jednostka wymaga użycia określonego terminatora, jest znacznie bardziej jednoznaczna, co skutkuje mniejszą liczbą błędów w kodzie.
Terminatory w językach programowania język programowania terminatory przykłady Język C; /* średnik */ instrukcja, deklaracja } /* nawias klamrowy zamykający */ blok (funkcji lub instrukcji blokowej){ int a=0; printf("a=%d",a); } Pascal; {średnik} deklaracje, nagłówki: programu, podprogramu, modułu (TP) . {kropka} program, moduł (TP)program a1; const C1=1; var a:=C1; begin write(a) end. PL/I ; /* średnik */ A=0; DO I=1 TO 10; A=A+1; END; Python # Zmniejszenie wcięcia a = 0 for i in data: a += i print(a)
Przypisy Podręcznik języka C na Wikibooks
Podręcznik języka Python na Wikibooks
Bibliografia Michael Marcotty, Henry Ledgord, W kręgu języków programowania, tłumaczenie: Krystyna Jerzykiewicz, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Biblioteka Inżynierii Oprogramowania, John E. Nicholls, Struktura języków programowania, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Informatyka,
Zobacz też Separator instrukcji Instrukcja (informatyka) Separator (programowanie) Ogranicznik (programowanie)
Kategoria:Konstrukcje programistyczne