PROLAN

Cards (49)

  • Context-free Grammars (a.k.a. Backus-Naur Form)
  • Three formal methods of describing semantics: Operational, Axiomatic, Denotational Semantics
  • The syntax of a programming language is the form of its expressions, statements, and program units.
  • Its semantics is the meaning of those expressions, statements, and program units.
  • The strings of a language are called sentences or statements.
  • The small units of the syntax of programming language are called lexemes.
  • The lexemes of a programming language include its numerical literals, operators, and special words, among others.
  • Each lexeme group is represented by a name, or token.
  • A token of a language is a category of its lexemes.
  • Languages can be formally defined in two distinct ways: by recognition and by generation.
  • Usually called grammars, commonly used to describe the syntax of programming languages.
  • BNF of Backus-Naur Form.
  • If the binding first occurs during run time or can change in the course of program execution it is called dynamic
  • Reserved Word is a special word of a programming language that cannot be used as a name.
  • Program Variable is an abstraction of a computer memory cell or collection of cells.
  • Keyword is a word of programming language that is special only in certain contexts.
  • Binding is an association between an attribute and an entity.
  • When more than one variable name can be used to access the same memory location, the variables are called aliases.
  • The address of a variable is the machine memory address with which it is associated
  • The time at which a binding takes place is called Binding Time.
  • A variable's value is sometimes called R-value.
  • Name is a string of characters used to identify some entity in a program
  • A metalanguage is a language that is used to describe another language.
  • BNF is a metalanguage for programming language.
  • The abstraction in a BNF description, or grammar, are often called nonterminal symbols, or simply nonterminals.
  • The lexemes and tokens of the rules are called terminal symbols, or simply terminals.
  • A BNF description, or grammar, is a collection of rules.
  • The address of a variable is sometimes called the l-value.
  • The type of a variable determines the range of values the variable can store and the set of operations that are defined for values of the type.
  • The value of a variable is the contents of the memory cell or cells associated with the variable.
  • The term memory cell means abstract memory cell.
  • A binding is static if it first occurs before run time begins and remains unchanged throughout the program execution.
  • Program Variable is an abstraction of a computer memory cell or collection of cells.
  • Special Words in programming languages are used to make programs more readable by naming actions to be performed.
  • Explicit Declaration is a statement in a program that lists variable names and specifies that they are a particular type.
  • An Implicit Declaration is a means of associating variables with types through default conventions, rather than declaration statements.
  • Another kind of implicit type declaration uses context. This is sometimes called Type Interference.
  • Allocation is a process in which the memory cell to which a variable is bound somewhere must be taken from a pool of a available memory.
  • Deallocation is the process of placing a memory cell that has been unbound from a variable back into the pool of available memory.
  • The Lifetime of a variable is the time during which the variable is bound to a specific memory location.