i alıyorum kodumu derlemeye çalışırken:Haskell: beklenen ulaşamasa tip gerçek tip 'IO t0' 'Integer'
[1 of 1] Compiling Main (survey2.hs, survey2.o)
survey2.hs:20:1:
Couldn't match expected type ‘IO t0’ with actual type ‘Integer’
In the expression: main
When checking the type of the IO action ‘main’
Ben '9 belirterek ile karıştırmasını denedim “IO, IO t, IO t0, int, vb. dahil olmak üzere bir dizi farklı türde ana girişe girdikçe, başka yerlerde sahip olduğum işlev tanımlarına dayanarak, bir Tamsayı fonksiyona girmediğimi anlıyorum. Diğer işlevlerin hiçbiri düzgün çalışmayacaktır. Eminim, ana yazıya nasıl uygun yazılır.
factorial:: Integer -> Integer
factorial n
| n <= 1 = 1
| otherwise = n * factorial(n-1)
binomial :: (Integer, Integer) -> Integer
binomial (n, k)
| k > n = 0
| k < 0 = 0
| otherwise = factorial(n)/(factorial(n-k) * factorial(k))
bell :: Integer -> Integer
bell n
| n <= 1 = 1
| otherwise = sum [ binomial(n-1, k-1) * bell (k-1) | k<-[0..n-1] ]
bellSum :: Integer -> Integer
bellSum n = sum [ bell(k) | k<-[0..n] ]
main = bell(9 :: Integer)