Syntax

정혜인·2022년 12월 28일
0

💌 Syntax

- Terminology

  • sentence : 알파벳을 가지고 만들어진 char의 string (∑+ : 알파벳이 하나 이상의 조합)
  • language : 허용하는 모든 sentence를 모아둔 것(∑ : 알파벳 집합 기호)
  • lexeme : 형태소 기준으로 자른 것 (가장 작은 단위)
  • token : lexeme의 카테고리 (ex. identifier)
    ex) a = 100
    ㄴ> a, =, 100 : lexeme, + : identifier

- Formal Definition of Languages

  • Recognizers (automata)
    : 언어의 입력 문자열을 읽고 입력 문자열이 언어에 속하는지 여부 결정
    ex) syntax analyzer of compiler
  • Generators
    : grammar를 조합해서 sentence를 generate 가능
  • Final State Automata
  • Context Free Grammar (C.F.G) = Backus-Naur-Form (BNF)
    : meta language (다른 언어를 묘사하기 위한 language)
    문맥과 상관없이 이해되는 문법 -> 한 가지로만 해석 (parse tree 하나만 발생)
    -> abstraction이 가장 큰 특징!

BNF Rule

G = < T, N, S, P>
(terminal, non terminal, starting symbol, production rule)

0개의 댓글