Closed green-study closed 2 years ago
miniGo 문법을 보시면 세미콜론은 사용되지 않습니다. miniGo 문법을 참고하셔서 예제를 생각해보시면 됩니다. 예제를 추가로 드리는 것은 고려해보겠습니다.
현재 .g4 파일에 따르면 For_stmt := FOR expr stmt인데, 그러면 현재 과제의 for문은 조건식으로 expr하나만 사용한다고 보면 되는 것인가요?
minigo의 for문은 C나 go의 for문과는 조금 다르게 단순화되었습니다. 우선 말씀하신대로 for문은 조건문으로 expr하나만 사용한다고 보고 하시면 될 것 같습니다.
추가적인 질문이 있습니다. Go언어에서는 if expr {stmt}, for expr {stmt}에 대해서는 문제가 없으나 중괄호가 없을 경우 컴파일 에러가 발생합니다. 허나 주어진 .g4 파일에서는 중괄호 없이도 조건문과 반복문이 가능하도록 되어있습니다. 위 중괄호가 없는 경우도 고려하여 pretty print를 구현해야하나요? pdf에 해당 조건에 대해서는 서술이 없는 것 같아서 질문드립니다.
ex) pdf에 주어진 예시 if (a<0) {a++} ---------------prettyprint if (a < 0) { ....a++ }
중괄호가 없는 예시 if (a<0) a++ -----------------prettyprint if (a < 0) ....a++
for문의 조건문에 대해서는 expr로 한번에 처리하는 것 같은데 해당 요소처럼 .g4 파일에서 문법이 자세하게 명세되지 않은 부분에 대해서는 pretty print를 적용하지 않아도 되는 것인가요? 단순히 과제 pdf에서 언급하신 5가지 조건만 만족하면 되는지 궁금합니다.
ex) for i:=1;i<10;i++ -> for i = 1; i < 10; i++ {} 를 사용하면 와 같은 에러가 발생합니다.
그리고 추가적인 예시 go 입출력은 없는지 궁금합니다.