하스켈에서 트리 데이터 타입을 정의했고 트리의 요소 수를 계산하는 연관된 'size'메소드를 정의했습니다. 나는이 기능을 사용하여 지정된 필드에 액세스 할 수 내가 (GHCi의 장난에 의해) 발견했습니다 data Tree a = Empty
| Leaf {value::a}
| Node {left :: (Tree a), value :: a, right ::
방금 하스켈을 배우고 있습니다. I는 (C ^까지 무기한 중단)이 계승 함수 (ghci 이내) Prelude> let ft 0 = 1
Prelude> let ft n = n * ft (n - 1)
Prelude> ft 5
생성이라고 생각. 나를 올바른 방향으로 안내 할 수 있습니까? 감사합니다.
하스켈 표준 라이브러리의 Data.List에있는 함수를 살펴보고 "순열"을 시도 할 때 오류가 발생합니다. 내가 여기서 무엇을 놓치고 있니? 감사. Prelude> map (\b-> b*b) [1,2,3]
[1,4,9]
Prelude> permutations "abc"
<interactive>:1:0: Not in scope: `permutation
는 최근 하스켈 튜토리얼을 통해가는 대화 형 ghci 쉘에서 몇 가지 간단한 하스켈 표현을 시도 할 때이 동작을 발견했습니다 : 그 이유는 Prelude> 1.1 + 1.1 == 2.2
True
Prelude> 1.1 + 1.1 + 1.1 == 3.3
False
Prelude> 1.1 + 1.1 + 1.1 > 3.3
True
Prelude> 1.
나는 "아니 범위 : x"를 오류를 얻을 때 일을 내가 2의 가드 제거하는 경우, 그러나 ... blanks :: Sudoku -> [Pos]
blanks (Sudoku su) = [ fst x | x <- posSud | isBlank (snd x) ]
where
isBlank Nothing = True
isBlank _