Backusova–Naurova forma: Porovnání verzí

Smazaný obsah Přidaný obsah
m robot přidal: fi:Backus-Naur-muoto
A0 (diskuse | příspěvky)
m Odstranění linku na rozcestník Terminál s použitím robota - Změněn(y) odkaz(y) na Terminál (gramatika); cosmetic changes
Řádek 1:
'''Backus-Naurova forma''' ('''BNF''') je [[metasyntaxe]] používaná k vyjádření [[bezkontextová gramatika|bezkontextové gramatiky]], která se používá pro popis [[formální jazyk|formálních jazyků]]). [[John Backus]] a [[Peter Naur]] vytvořili bezkontextovou gramatiku, s jejíž pomocí definovali [[syntax|syntaxi]]i [[programovací jazyk|programovacích jazyků]] využitím dvou typů pravidel: lexikálního a syntaktického.
 
BNF se často využívá k zápisu (notaci) gramatik počítačových programovacích jazyků, sad instrukcí a komunikačních protokolů, ale také jako notace zastupující části gramatik skutečných jazyků. Řada učebnic o teorii programovacích jazyků nebo [[sémantika|sémantiky]] popisuje programovací jazyky pomocí BNF. Existuje řada rozšíření a jiných variant BNF.
Řádek 13:
<symbol> ::= <výraz se symboly>
 
kde symbol je [[neterminál]] a výraz se symboly sestává ze sekvence symbolů nebo sekvencí oddělených svislou čárou „|“, která indikuje možnost výběru. Celek představuje možnou náhradu za symbol vlevo. Symboly, které se na levé straně nikdy neobjeví, jsou [[terminálTerminál (gramatika)|terminály]].
 
=== Příklad 1 ===
Řádek 60:
[[Rozvinutá Backus-Naurova forma]] (Extended Backus–Naur form, EBNF) je metasyntaktická notace používaná k vyjádření bezkontextové gramatiky. Původně byla vyvinuta [[Niklaus Wirth|Niklausem Wirthem]], dnes je však většina proměnných EBNF standardizována a definována normami, zejm. ISO-14977 pod kódovým označením ISO/IEC 14977:1996(E).
 
[[Rozšířená Backus-Naurova forma]] (Augmented Backus–Naur form, ABNF) vychází z BNF, má však svůj vlastní specifický syntax a pravidla odvozování. Základním principem tohoto meta-jazyka je popsat formální systém jazyka. ABNF je zanesen do RFC 4234 a je často používán jako definovací jazyk pro komunikační protokol [[IETF]].
 
{{Překlad|en|Backus-Naur form}}