Syntaxe: Porovnání verzí
(Založena nová stránka s textem „Kategorie:Hesla ke zpracování UISK“) |
|||
(Není zobrazeno 5 mezilehlých verzí od stejného uživatele.) | |||
Řádek 1: | Řádek 1: | ||
− | [[Kategorie: | + | * SYNTAX skladba v jazykovědě – nauka o mluvnické stavbě vět - zkoumá principy spojování slova ve věty a utváření větných, popřípadě i vyšších celků (tzv. hypersyntax , která se blíží nauce o textu)<ref name="Diderot">Velký slovník naučný. Praha: Diderot, 1999. Encyklopedie Diderot. ISBN 80-902723-1-2.</ref> |
+ | * SYNTAX ve výpočetní technice – soubor pravidel pro tvorbu slov z definované množiny znaků daném jazyce<ref name="Diderot">Velký slovník naučný. Praha: Diderot, 1999. Encyklopedie Diderot. ISBN 80-902723-1-2.</ref> | ||
+ | |||
+ | == SYNTAXE == | ||
+ | |||
+ | Syntaxe se zabývá vymezením formálního jazyka jako podmnožiny řetězů nad abecedou, které tvoří správné zápisy v daném jazyce - věty jazyka. Přívlastek formální vyjadřuje nepřítomnost definice významu zápisů. | ||
+ | |||
+ | == SYNTAXE PROGRAMOVACÍCH JAZYKŮ == | ||
+ | |||
+ | * [[Sémantika a syntaxe informace|Syntaxe]] textových programovacích jazyků je obvykle definována kombinací regulárních výrazů (pro lexikální strukturu) aBackus-Naur Form (pro gramatickou strukturu) k indukčně stanoveným syntaktickým kategoriím (neterminály) [[aterminální symboly]].<ref name="Teaching">Matematická logika. Teaching: Antonín Kučera [online]. MUNI, 2016 [cit. 2016-11-13]. Dostupné z: http://www.fi.muni.cz/usr/kucera/teaching/logic/log.pdf</ref> | ||
+ | * Programovací jazyky mají nejčastěji kontextový charakter, který je dán zejména deklaracemi. Přestože existují speciální kontextové gramatiky, jejich použití není rozšířeno, neboť bezkontextové gramatiky jsou mnohem propracovanější a pružnější. Obvykle se proto pro popis syntaxe programovacích jazyk používají nejvýše bezkontextové gramatiky, což souvisí s tím, že pro každý kontextový jazyk existuje bezkontextový nadjazyk, který jej obsahuje. Kontextové závislosti (omezení) se pak vyjadřují jinými prostředky.<ref name="Semantika">CHYTIL, Michal a Sabina SCHERLOVÁ. Sémantika programovacích jazyků - atributové gramatiky. Praha: Univerzita Karlova, 1984.</ref> | ||
+ | |||
+ | == MIKROSYNTAXE A MAKROSYNTAXE == | ||
+ | |||
+ | Mikrosyntaxe a makrosyntaxe Zápis v [[Programovací jazyk|(programovacím) jazyce]] je tvořen posloupností znak abecedy, tj. L ⊆ A* . Pro účely definice jazyka je vhodné považovat za abecedu jazyka nikoliv jednotlivé znaky, ale tzv. lexikální elementy (lexémy, tokens) - identifikátory, literály, operátory, komentáře atd. | ||
+ | |||
+ | Prvním krokem při popisu jazyka je tedy definice syntaxe těchto lexém - mikrosyntaxe ([[lexikon]]) jazyka Q ⊆ A* . Programy pak považujeme za zápisy nad lexikonem jazyka Q, tj. L ⊆ Q* . | ||
+ | |||
+ | Popis syntaxe pak nazýváme makrosyntaxe jazyka. | ||
+ | |||
+ | Zobrazení (převod) lex: A* → Q* ∪ { error } se nazývá lexikální analýza a řadí se definicí mikrosyntaxe. Často se pro definici mikrosyntaxe používají regulární výrazy, pro makrosyntaxi se využívají obvykle bezkontextové gramatiky, BNF, EBNF, atd.<ref name="Semantika2">RICHTA, Karel a Jiří VELEBIL. Sémantika programovacích jazyků. Praha: Karolinum, 1997. ISBN 80-7184-327-X.</ref> | ||
+ | |||
+ | == Odkazy == | ||
+ | |||
+ | === Reference === | ||
+ | |||
+ | <references /> | ||
+ | |||
+ | === Použitá literatura === | ||
+ | |||
+ | * Velký slovník naučný. Praha: Diderot, 1999. Encyklopedie Diderot. ISBN 80-902723-1-2. | ||
+ | * Matematická logika. Teaching: Antonín Kučera [online]. MUNI, 2016 [cit. 2016-11-13]. Dostupné z: http://www.fi.muni.cz/usr/kucera/teaching/logic/log.pdf | ||
+ | * CHYTIL, Michal a Sabina SCHERLOVÁ. Sémantika programovacích jazyků - atributové gramatiky. Praha: Univerzita Karlova, 1984. | ||
+ | * RICHTA, Karel a Jiří VELEBIL. Sémantika programovacích jazyků. Praha: Karolinum, 1997. ISBN 80-7184-327-X. | ||
+ | |||
+ | === Externí odkazy === | ||
+ | |||
+ | * [http://www.fi.muni.cz/usr/kucera/teaching.html Teaching: Antonín Kučera] | ||
+ | |||
+ | === Související články === | ||
+ | |||
+ | * [[Portál:Logika|Logika]] | ||
+ | |||
+ | === Klíčová slova === | ||
+ | |||
+ | Syntaxe, Syntax, Programovací jazyk, formální jazyk, PC, Počítače | ||
+ | |||
+ | [[Kategorie:Logika]] |
Aktuální verze z 18. 1. 2017, 18:37
- SYNTAX skladba v jazykovědě – nauka o mluvnické stavbě vět - zkoumá principy spojování slova ve věty a utváření větných, popřípadě i vyšších celků (tzv. hypersyntax , která se blíží nauce o textu)[1]
- SYNTAX ve výpočetní technice – soubor pravidel pro tvorbu slov z definované množiny znaků daném jazyce[1]
Obsah
SYNTAXE
Syntaxe se zabývá vymezením formálního jazyka jako podmnožiny řetězů nad abecedou, které tvoří správné zápisy v daném jazyce - věty jazyka. Přívlastek formální vyjadřuje nepřítomnost definice významu zápisů.
SYNTAXE PROGRAMOVACÍCH JAZYKŮ
- Syntaxe textových programovacích jazyků je obvykle definována kombinací regulárních výrazů (pro lexikální strukturu) aBackus-Naur Form (pro gramatickou strukturu) k indukčně stanoveným syntaktickým kategoriím (neterminály) aterminální symboly.[2]
- Programovací jazyky mají nejčastěji kontextový charakter, který je dán zejména deklaracemi. Přestože existují speciální kontextové gramatiky, jejich použití není rozšířeno, neboť bezkontextové gramatiky jsou mnohem propracovanější a pružnější. Obvykle se proto pro popis syntaxe programovacích jazyk používají nejvýše bezkontextové gramatiky, což souvisí s tím, že pro každý kontextový jazyk existuje bezkontextový nadjazyk, který jej obsahuje. Kontextové závislosti (omezení) se pak vyjadřují jinými prostředky.[3]
MIKROSYNTAXE A MAKROSYNTAXE
Mikrosyntaxe a makrosyntaxe Zápis v (programovacím) jazyce je tvořen posloupností znak abecedy, tj. L ⊆ A* . Pro účely definice jazyka je vhodné považovat za abecedu jazyka nikoliv jednotlivé znaky, ale tzv. lexikální elementy (lexémy, tokens) - identifikátory, literály, operátory, komentáře atd.
Prvním krokem při popisu jazyka je tedy definice syntaxe těchto lexém - mikrosyntaxe (lexikon) jazyka Q ⊆ A* . Programy pak považujeme za zápisy nad lexikonem jazyka Q, tj. L ⊆ Q* .
Popis syntaxe pak nazýváme makrosyntaxe jazyka.
Zobrazení (převod) lex: A* → Q* ∪ { error } se nazývá lexikální analýza a řadí se definicí mikrosyntaxe. Často se pro definici mikrosyntaxe používají regulární výrazy, pro makrosyntaxi se využívají obvykle bezkontextové gramatiky, BNF, EBNF, atd.[4]
Odkazy
Reference
- ↑ 1,0 1,1 Velký slovník naučný. Praha: Diderot, 1999. Encyklopedie Diderot. ISBN 80-902723-1-2.
- ↑ Matematická logika. Teaching: Antonín Kučera [online]. MUNI, 2016 [cit. 2016-11-13]. Dostupné z: http://www.fi.muni.cz/usr/kucera/teaching/logic/log.pdf
- ↑ CHYTIL, Michal a Sabina SCHERLOVÁ. Sémantika programovacích jazyků - atributové gramatiky. Praha: Univerzita Karlova, 1984.
- ↑ RICHTA, Karel a Jiří VELEBIL. Sémantika programovacích jazyků. Praha: Karolinum, 1997. ISBN 80-7184-327-X.
Použitá literatura
- Velký slovník naučný. Praha: Diderot, 1999. Encyklopedie Diderot. ISBN 80-902723-1-2.
- Matematická logika. Teaching: Antonín Kučera [online]. MUNI, 2016 [cit. 2016-11-13]. Dostupné z: http://www.fi.muni.cz/usr/kucera/teaching/logic/log.pdf
- CHYTIL, Michal a Sabina SCHERLOVÁ. Sémantika programovacích jazyků - atributové gramatiky. Praha: Univerzita Karlova, 1984.
- RICHTA, Karel a Jiří VELEBIL. Sémantika programovacích jazyků. Praha: Karolinum, 1997. ISBN 80-7184-327-X.
Externí odkazy
Související články
Klíčová slova
Syntaxe, Syntax, Programovací jazyk, formální jazyk, PC, Počítače