Formal grammar is a mathematical model for language syntax, natural as well as artificial. In this course we will discuss various properties of context-free grammars. Some special classes of grammars, for which fast algorithms of syntax analysis exist, shall also be discussed.