📚

プログラミング言語の規則

2020/10/21に公開
  • Lexical
  • Syntax
  • Semantic

Lexical

regular grammer.

elementsは以下。

  • Keywords: if, elseなど
  • Operators: +, -, *など
  • Parentheses, eparation characters
  • Literals: 0(integer literal), 0.1(double literal), "Hello World!" etc. Identifiers
  • Comments

Identifiersとは?

variables or functions or etc.

Alphanumric is used.

Syntatical rules

how to build the program.

syntax is describe in form of BNF(Backus normal form).

Semantic rules

does it make sense that we built?

シンタックス的にはただしいが、semanticがおかしい例

int main() {
  char a[10];
  a = 2;
}

compilation

コンパイルの部品

エラーの分類

https://www.geeksforgeeks.org/error-detection-recovery-compiler/

Discussion