최재승
가입: 2012년 9월 10일 올린 글: 211
|
올려짐: 2015년9월15일 2:46 주제: |
|
|
안녕하세요, 프로그래밍 언어 조교 최재승입니다
| 인용: | 타입을 int list * int list -> int list 구하라고 하셨는데
'a list * 'a list -> 'a list 로 구현해도 상관없나요?
|
'a list * 'a list -> 'a list 로 구현하셔도, 정수 리스트의 페어를 받아 제대로 descending order의 정수 리스트를 내놓는다면 채점시에 에러가 발생하지는 않을 것입니다. 하지만 가급적이면 원칙을 따라 int list * int list -> int list 타입의 함수로 정의하시는 것을 권장드립니다.
| 인용: | | 'a list를 인자로 받는 함수를 int list를 인자로 받는 함수로 어떻게 바꾸나요? |
'a list를 인자로 받는 함수를 정의하셨다면, 이미 정의된 함수의 타입은 변환할 수 없습니다. 다만 'a list를 인자로 받는 함수에 인자로 int list를 준다거나, 처음부터 함수가 int list를 인자로 받도록 선언하는 것은 가능합니다.
| 코드: | | let list_len : int list -> int = fun lst -> List.length lst |
와 같은 식으로 타입을 명시해서 정의하면 int list만 인자로 받는 함수가 될 것입니다.
조교 드림 |
|