Lecture 06: Describing Language Syntax

 0    11 flashcards    up804653
download mp3 print play test yourself
 
Question English Answer English
what are regular grammars
start learning
regular grammars (equivalently, regular expressions) are useful for defining languages’ lexical structure;
what re context-free grammars
start learning
context-free grammars (CFG) for defining language syntax.
CFG is the ___ ___ used way to describe programming language.
start learning
CFG is the most widely used way to describe programming language.
what is the formal definition for CFG
start learning
a context-free grammar is a tuple G = (T, N, S,P)
if a context-free grammar is a tuple G = (T, N, S,P) what is T
start learning
T is a finite nonempty set of terminal symbols, which consist of strings in the language (such as while), which refer to parts of the text of sentences in the language.
if a context-free grammar is a tuple G = (T, N, S,P) what is N
start learning
N is a finite nonempty set of non-terminal symbols, disjoint from T. These refer to syntactic structures defined by other structures and rules (e.g., <exp>).
if a context-free grammar is a tuple G = (T, N, S,P) what is S
start learning
S ∈ N (the start symbol),
if a context-free grammar is a tuple G = (T, N, S,P) what is P
start learning
P is a set of (context-free) productions of the form A → α (reads A produces α) where A ∈ N and α ∈ (T ∪ N)∗.
What is the standard shorthand notation for context-free grammars (CFG)
start learning
[1] The start symbol is that given on the left-hand-side of the first rule. [2] For each non-terminal symbol we use | to separate the alternative right-hand sides of the production rules.
write G2 in short hand G2 = (T, N, S, P) where T = {a, b}, N = {S, C} and P ={S →ε, S →C, S →aSa, S →bSb, C → a, C → b}.
start learning
G2 can be written as follows: S → ε | C | aSa | bSb C → a | b
What does BNF stand for?
start learning
Backus-Naur Form

You must sign in to write a comment