방금 SML에서 함수 프로그래밍을 배우기 시작했으며 다음 두 함수를 어떻게 단일 함수로 결합 할 수 있는지 알고 싶습니다. 분리 함수는 도우미 함수 'removed'를 사용하여 모든 유형 ('a) 목록의 중복을 삭제합니다.SML의 목록에서 중복 항목 제거
fun isolate [] = []
| isolate (l as x::xs) = x::isolate(remove(x,xs))
fun remove (x,[]) = []
| remove (x,l as y::ys) = if x = y then remove(x,ys) else y::remove(x,ys)
그래서 SML의 구조를 더 잘 이해하기 위해 분리 내에서 함수 제거를 어떻게 포함할까요? 이것은 사소한 것처럼 보일지 모르지만 나는 그것에 대해 생각하고 그것을 파악할 수 없습니다. 도와 줘서 고마워!
이 정확히 내가 무엇을 찾고 있었다! 고맙습니다! – macalaca
안녕하세요 @ qaphla, 코드를 컴파일 할 때 연산자와 피연산자가 일치하지 않는 오류가 발생했습니다. 오류를 찾을 수 없습니다. – macalaca
신경 쓰지 마세요. let의 'in'부분에서 remove 메소드를 호출하면 찾았습니다. 당신은 올바른 주장을 전달하지 않습니다. – macalaca