본문 바로가기

23년 1학기 학교공부/프로그래밍언어개론

[PL] Loops in programming language

목차

    728x90
    반응형
    SMALL

    📁 Loops

    Programming language는 다양한 형태의 반복문을 지원한다.

     

    While loop

     

    Do-while loop

     

    For loop

     

     

    이때 MiniC는 while loop만을 지원하며, 다른 형태의 반복문을 syntactic sugar로 정의할 수 있다.

     

     

    해당 포스팅에서는 MiniC에 반복문을 추가하여 확장한 MiniC를 정의한다.

     

     

     

    📁 Concrete Syntax

     

     

     

    📁 Abstract syntax

     

     

     

    📁Semantics

     

     

     

    📁 Example

    x = 3; // [x ↦→ 3]
    y = 0; // [x ↦→ 3, y ↦→ 0]
    while x > 0 { // iter1: x > 0 is true in [x ↦→ 3, y ↦→ 0]
    y = y + x; // iter1: [x ↦→ 3, y ↦→ 3]
    x = x - 1; // iter1: [x ↦→ 2, y ↦→ 3]
    }

     

     

    728x90
    반응형
    LIST