하스켈과 관련하여 문제가 많은 소규모 과제를 다룹니다. 정수가리스트의 일부인지 아닌지를 찾기위한 재귀 적 메소드를 만들려고합니다. 나는 그 요지를 안다. 그러나 haskell 문법을 올바르게 작동시키지 못한다. 현재 목록이 비어 있는지 확인한 다음 False이면 정수가 현재 목록의 머리글과 같은지 확인하고 True이면 해당 값을 가진 멤버를 다시 호출하고 그 목록. 이 기능을 제대로 수행하려면 어떻게해야합니까?하스켈의 멤버 함수
member ::Int -> [Int] -> Bool
member x y
if y [] then False
else if x == head y then True
else member x tail y
나는 또한 시작 라인으로
member :: (Eq x) => x -> [x] -> Bool
를 사용하여 시도했다, 또한 훨씬 더 간단 :
let member x y = if null y then False
else if x == head y then True
else member x tail y
어떤 도움
현재이 내가 가진 무엇 감사하겠습니다. 좀 더 명확하게 쓸 수 있습니다 일치하는 패턴
꼬리 앞에 $를 추가하면 원래 버전이 작동합니다. 응용 프로그램은 왼쪽 연관입니다. – bipll
나는이 오류를 추가하고있다. 구문 분석 오류 : 상위 수준의 노출 표현 아마도 TemplateHaskell을 사용하려고했습니다. – Elmangos
들여 쓰기를 잊어 버리지 않았습니까? – bipll