bazı Haskell öğrenmek için çalışıyorum ve bu çalıştı: Neden farklı tek ve çift tırnak görmek ve bu önemli olduğunuhaskell - tek v çift tırnak
ghci> :t 'a'
'a' :: Char
ghci> :t "a"
"a" :: [Char]
?
bazı Haskell öğrenmek için çalışıyorum ve bu çalıştı: Neden farklı tek ve çift tırnak görmek ve bu önemli olduğunuhaskell - tek v çift tırnak
ghci> :t 'a'
'a' :: Char
ghci> :t "a"
"a" :: [Char]
?
Bu, C/C++/C#/Java ve diğer programlama dilleri gibidir. Tek tırnak, tek karakter anlamına gelir, çift tırnak, karakter dizisi (dizgi) anlamına gelir.
Haskell'de 'c'
tek bir karakter (Char
), ve "c"
karakterlerin listesini ([Char]
) 'dir.
Sen tamsayılar tamsayılar ve listelere bu karşılaştırabilirsiniz:
ghci> let a = 1
ghci> let b = [1,2,3]
ghci> :t a
a :: Integer
ghci> :t b
b :: [Integer]
tek element ve elementlerin bir liste arasında bir ayrım olmalı, çünkü önemli. Basit elemanlar üzerinde farklı işlemler ve listelerde farklı işlemler yapabilirsiniz.
Farklı şekilde yorumlandıkları için bunlar sadece (bu, dilin nasıl tanımlandığı). Bu önemlidir, çünkü Char
ve [Char]
aynı şey değildir. Bunun dışında, burada ne sormaya çalıştığınızdan emin değilim.
Belki de dikkat edilmesi gereken önemli bir nokta şudur:: Bilgi dizgesi, "String = [Char]" tipini yazdırır, böylece 'String' türünün nasıl tanımlandığını açıkça görebilirsiniz. – bheklilr