Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

라벨이 있는 continue문 #329

Open
dakeshi opened this issue Apr 11, 2018 · 0 comments
Open

라벨이 있는 continue문 #329

dakeshi opened this issue Apr 11, 2018 · 0 comments
Labels
review discussion 리뷰과정에서 주고받은 의견들

Comments

@dakeshi
Copy link
Contributor

dakeshi commented Apr 11, 2018

continue 챕터 리뷰 과정에서
라벨이 있는 continue 문과 관련된 토론이 진행되었습니다. break 문에도 적용되는 사항입니다.

토론의 대상이 된 원문 문장은 다음과 같습니다. https://golang.org/ref/spec#Continue_statements

If there is a label, it must be that of an enclosing "for" statement, and that is the one whose execution advances.

토의내용

@ezaurum

라벨이 있는 경우에는, "for" 문 내부에 continue 문이 있어야 하며, 라벨과 함께 사용된 continue 문은 다음 단계로 실행을 진행시킨다.

로 제안(@dakeshi)을 해주셨는데,
for 문 내부에 continue 문이 있어야 하는 것은 물론 맞지만, 이 문장은
https://play.golang.org/p/CY__SPEg0sB
이런 경우 처럼, continue 문이 가리키는 라벨은 for 문에 붙어있어야 한다는 게 맞는 의미입니다.
첨부한 코드는 label 지정이 잘못 되었다고 실행이 안 됩니다.
for 붙은 것만 실행이 되어야 하지요.

@dakeshi
라벨문의 경우 for문과 연계해서 사용해야 한다고 표현하는게 맞겠군요.

@ezaurum
넵. 그리고 for문에 붙은 라벨이더라도 해당 continue 문을 에워싸는 for 문에 붙은 라벨이 아니면 실행이 안 됩니다.

@dakeshi
enclosing for statement가 두 가지 의미를 가진 거라고 봐야할까요? for 문 내부에 continue 문이 있어야 하고 라벨 문은 for 문과 연계해서 사용해야 한다. 처럼요.
enclosing for statement는 for 문 내부에 continue 문이 있어야 한다는 의미보다는 라벨 문은 for문과 함께 사용해야 한다는 의미로만 번역해도 될 것 같네요.

@ezaurum
아뇨. continue [Label] 형태는 for 문 바깥에서는 실행이 안 되니까 해당 부분도 들어가야 합니다.
그런데 에워싸는 for문이 의미가 명확하지 않은가요?
for { continue }
이 형태니까 for 문이 continue를 에워싸고 있다고 표현하면 이해가 쉬워 보이는데요.
for 내부에 continue 문이 있어야 한다고 하면 외
A: for { continue B } B: for { continue A }
이것도 되어야 하는데 이건 안 되거든요.

@dakeshi
좋은 의견이십니다. enclosing의 한글 표현이 에워싸다, 둘러싸다 이렇게 있는데 에워싸인 이라는 표현을 쓸려면 continue문을 에워싸는 for문 이렇게 번역해야 자연스러울 것 같네요.
정리하자면, 라벨이 있는 경우 continue문을 에워싸는 for문이 있어야 하며... 이렇게 표현하면 어떨까요?

@ezaurum
라벨이 있는 경우 continue문을 에워싸는 for문의 라벨이어야 하며...
이 쪽이 명확해 보입니다.

@dakeshi dakeshi added the review discussion 리뷰과정에서 주고받은 의견들 label Apr 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
review discussion 리뷰과정에서 주고받은 의견들
Projects
None yet
Development

No branches or pull requests

1 participant