let xs = [1, 'a']
hemen hatayı şikayet yazın:
Ancak<interactive>:28:11:
No instance for (Num Char) arising from the literal ‘1’
In the expression: 1
In the expression: [1, 'a']
In an equation for ‘xs’: xs = [1, 'a']
, ben sadece geçti
let xs = [1, [1, 1]]
yazarken.
<interactive>:5:1:
No instance for (Num [t0]) arising from a use of ‘it’
In a stmt of an interactive GHCi command: print it
ben Haskell nedenle tüm hata derleme zamanında yakalandı edilmelidir statik tip dil olduğunu düşünüyorum: Ben xs yazdırmaya çalıştığınızda Ve şikayet ediyor. Yukarıdaki 2 hataların neden farklı zamanda yakalandığını merak ediyorum?
Neden aynı neden mantıklı bir 'Num Char' örneği için geçerli değil? –
@ReidBarton İyi soru! Aslında bundan emin değilim. Örnek kararda, GHC'nin monomorfik kısıtlamalar için kanıt bulmayı geciktirmeyi reddettiğini tahmin ediyorum; ama bu sadece bir tahmin. –
'Enum Char' örneğine dayalı bir' Num Char' örneği tanımlayabilirsiniz. Aynı mantık geçerlidir, ancak örnek burada yer almamaktadır. –