2014-12-07 2 views

답변

1

IntInf은 모듈의 이름입니다 나는 그것이 "IntInf : 언 바운드 형식의 생성자 오류"저를주는 유지

fun selectsort([a]) = [a] 
    | selectsort(l : IntInf list) = 
    if (hd(selectsort(tl(l)))) < hd(l) then hd(selectsort(tl(l)))::h::tl(selectsort(tl(l))) 
    else hd(l)::selectsort(tl(l)); 

을하려고 할 때

fun selectsort([a]) = [a] 
    | selectsort(h::t) = 
    if (hd(selectsort(t))) < h then hd(selectsort(t))::h::tl(selectsort(t)) 
    else h::selectsort(t); 

: 여기

내 코드입니다 형식의 이름은 IntInf.int입니다. 아아, 당신의 코드는 다소 단순화 :

fun selectsort([a]) = [a] 
    | selectsort(x::y::t : IntInf.int list) = 
    if y < x then y::x::selectsort(t) else x::selectsort(y::t) 

참고 그러나 그 IntInf는 모든 구현에 사용할 수없는 옵션 모듈입니다.

+0

매우 특정한 코드에 대해 이렇게 만들었으므로 빈 목록은 정렬되지 않습니다. –

+0

@ Jean-LucNacifCoelho, 어쨌든 누락 된 사례를 추가하고 해당 사례를 만드는 것이 좋습니다. 'Domain' 예외를 발생시킵니다. –

관련 문제