言語

2022-02-12 (土) 16:29:45

言語とは

言語の種類

  • 自然言語
    • 自然人が日常的に使う言語
  • 人工言語
    • 特定の目的の為に作られた言語

プログラミング言語

文脈自由文法

  • 形式文法
  • 言語を生成する規則を抽象化したもの

文脈自由文法の種類

  • 句構造文法
  • 文脈依存文法
  • 正規文法

文脈自由言語(形式言語)

  • 文脈自由文法(形式文法)により生成される抽象言語のこと

言語の構造

言語の構成要素

  • 構成要素の順番(小さい順)
    • 文字
    • 字句(トークン)
    • 言語

言語の規則

  • 字句規則
    • 文字から字句が生成される規則
  • 構文規則
    • 字句の並び順の規則

BNF記法

  • 文脈自由文法を形式的に記述する代表的な表記法
  • 多くのプログラム言語の構文規則の記述で使われている
    • ALGOL 60 の構文規則の記述で使われた

言語処理

  • 字句解析
    • 字句規則に基づいて字句の検査と切り出しを行うこと
    • 正規表現で表現することができる
  • 構文解析
    • 字句解析で切り出された字句を、構文規則に基づいて解析して、文法的な正当性を検査すること
    • 文脈自由文法で表現することができる
  • 意味解析

関連用語