이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
김찬민
가입: 2010년 9월 6일 올린 글: 81
|
올려짐: 2014년12월2일 13:30 주제: 숙제 7: return 타입이 유일하게 결정되지 않으면 무엇을 답으로 출력해야 합니까? |
|
|
다음과 같은 프로그램을 생각해볼 수 있습니다.
코드: | let rec f = fn x => f x in f 1234 end |
영원히 리턴되지 않는 프로그램입니다. 프로그램은 non-function type expression이므로, 리턴 타입이 정수라고 가정하여 프로그램 취급을 할 수 있는 것 같습니다.
이러한 경우 답으로 무엇을 출력해야 하는가요?
타입에러가 맞는가요? |
|
위로 |
|
|
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년12월2일 18:25 주제: |
|
|
안녕하세요.
질문하신 케이스에 대해서는, 구현의 선택에 따라 타입 에러를 내놓는 것도, 임의의 타입으로 가정하여 정상적인 프로그램으로 취급하는 것도 납득 가능할 것 같습니다. 해당 경우에 대해서는 어떤 식으로 결과를 내놓더라도 괜찮은 것으로 하겠습니다. 채점을 위한 테스트케이스에는 사용하지 않도록 하겠습니다.
강동옥 가 2014년12월3일 13:39에 수정함, 총 1 번 수정됨 |
|
위로 |
|
|
김찬민
가입: 2010년 9월 6일 올린 글: 81
|
올려짐: 2014년12월2일 18:56 주제: |
|
|
감사합니다. 마지막 과제까지 많이 도움 받아갑니다. |
|
위로 |
|
|
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년12월3일 13:41 주제: |
|
|
답변을 정정하겠습니다.
타입 시스템은 프로그램이 종료되는냐의 여부와 관계없이 체크돼야 합니다. |
|
위로 |
|
|
유경인
가입: 2013년 9월 9일 올린 글: 29
|
올려짐: 2014년12월3일 16:07 주제: |
|
|
그럼 이 예시의 경우는 결과가 어떻게 나와야 하나요? |
|
위로 |
|
|
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년12월4일 12:12 주제: |
|
|
해당 케이스는 무엇을 리턴하는지 알지 못하기때문에 타입 에러가 나는게 맞습니다.
끝나는것과는 관계없는 문제입니다. |
|
위로 |
|
|
|