프로그래밍 언어론 · 2강

구문과 의미론

언어의 생김새와 뜻을 정확히 적는 방법입니다. 문법 규칙에서 문장이 만들어지는 과정을 따라가고, 문법이 잡지 못하는 규칙과 프로그램의 뜻을 적는 세 가지 방법까지 9편으로 나눠 봅니다.

  1. 1생김새와 뜻은 어떻게 다를까?구문과 의미론, 어휘 단위와 토큰
  2. 2문법은 어떻게 적을까?BNF와 문맥 자유 문법, 규칙 읽는 법
  3. 3규칙에서 문장이 나오기까지유도, 문장 형태, 레프트모스트 유도
  4. 4유도를 나무로 그리면?파스 트리, 루트와 잎
  5. 5한 문장에 나무가 둘이라면?모호한 문법과 연산자 우선순위
  6. 6같은 연산자가 이어지면?결합성과 EBNF
  7. 7문법에 맞는데 왜 틀렸을까?정적 의미론과 속성 문법
  8. 8뜻은 무엇으로 적을까?동적 의미론: 조작적 의미론과 표시적 의미론
  9. 9프로그램이 맞다고 증명할 수 있을까?공리적 의미론, 2강 정리

내용과 예제는 Robert W. Sebesta의 《Concepts of Programming Languages》 12판 3장을 따랐습니다.