Closed NULL0xFF closed 2 years ago
첨부파일 과제_설명.pdf의 예) MiniGo.g4 부분에
과제_설명.pdf
예) MiniGo.g4
grammar MiniGo; program: decl+ {System.out.println("202100000 Rule 0");}; decl: var_decl {System.out.println("202100000 Rule 1-1");} | fun_decl {System.out.println("202100000 Rule 1-2");}; var_decl: dec_spec IDENT type_spec {System.out.println("202100000 Rule 2-1");} | dec_spec IDENT '[' LITERAL ']' type_spec {System.out.println("202100000 Rule 2-2");}; ...
으로 예시가 제공되어 있습니다.
저희가 제출해야 하는 MiniGo.g4에는 개개인의 학번과 규칙 번호를 출력되게끔 수정해야 하는데
MiniGo.g4
에 대해 질문드립니다.
... var_decl: dec_spec IDENT type_spec {System.out.println("202100000 Rule 2-1");} | dec_spec IDENT type_spec '=' LITERAL {System.out.println("202100000 Rule 2-2");} | dec_spec IDENT '[' LITERAL ']' type_spec {System.out.println("202100000 Rule 2-3");}; dec_spec: VAR {System.out.println("202100000 Rule 3");}; type_spec: {System.out.println("202100000 Rule 4-1");} | INT {System.out.println("202100000 Rule 4-2");} | '[' LITERAL ']' INT {System.out.println("202100000 Rule 4-3");}; fun_decl: FUNC IDENT '(' params ')' type_spec compound_stmt {System.out.println("202100000 Rule 5");}; ...
... var_decl: dec_spec IDENT type_spec {System.out.println("202100000 Rule 2-1");} | dec_spec IDENT type_spec '=' LITERAL {System.out.println("202100000 Rule 2-2");} | dec_spec IDENT '[' LITERAL ']' type_spec {System.out.println("202100000 Rule 2-3");}; dec_spec: VAR {System.out.println("202100000 Rule 4");}; type_spec: {System.out.println("202100000 Rule 5-1");} | INT {System.out.println("202100000 Rule 5-2");} | '[' LITERAL ']' INT {System.out.println("202100000 Rule 5-3");}; fun_decl: FUNC IDENT '(' params ')' type_spec compound_stmt {System.out.println("202100000 Rule 3");}; ...
답변 감사합니다. 그렇다면 MiniGo의 문법 규칙 번호는 층별 순회를 따르는 것이 맞나요?
MiniGo
아! 잘못 설명드렸습니다. 순차적으로 규칙번호를 부여하는 것이 맞습니다.
확인했습니다. 순차적으로 작성하여 제출하도록 하겠습니다. 감사합니다 :)
규칙 번호 지정 순서
첨부파일
과제_설명.pdf
의예) MiniGo.g4
부분에으로 예시가 제공되어 있습니다.
저희가 제출해야 하는
MiniGo.g4
에는 개개인의 학번과 규칙 번호를 출력되게끔 수정해야 하는데MiniGo.g4
소스코드 줄 순서대로 해야 하는지에 대해 질문드립니다.
순차적으로 부여된 규칙번호
트리 형식으로 부여된 규칙번호