Završni i nezavršni znakovi

U računarstvu, završni i nezavršni znakovi su oni znakovi (simboli) koji su korišteni za konstruisanje pravila produkcije u formalnoj gramatici. Dok završni znakovi oblikuju dijelove nizova znakova koje gramatika generiše, nezavršni znakovi preslikavaju imena produkcija gramatike i na taj način generišu nizove znakova supstitucijom bilo drugih nezavršnih znakova, bilo završnih znakova (ili nekom njihovom kombinacijom).

Na primjer, za predstavljanje cijelog broja (engl. integer) možemo zadati sljedeći opis u Backus-Naurovoj notaciji:

 <cijeli_broj> ::= ['-'] <cifra> {<cifra>}
 <cifra> ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'

Ovdje su znakovi (-,0,1,2,3,4,5,6,7,8,9) završni, dok su <cifra> i <cijeli_broj> nezavršni znakovi.
 Reference 

 Vanjski linkovi 

 Aho, Sethi, & Ullman, ''Compilers: Principles, Techniques, and Tools'''', Addison-Wesley, 1986. 

Kategorija:Formalni jezici