module Foo where
main = do
let foo = case 0 of
0 -> 4
return()
GHC ben bir sözdizimi hatası var ısrar ediyor? Bir süredir Haskell'i kullandım ve bana doğru görünüyor. do sözdiziminde
module Foo where
main = do
let foo = case 0 of
0 -> 4
return()
GHC ben bir sözdizimi hatası var ısrar ediyor? Bir süredir Haskell'i kullandım ve bana doğru görünüyor. do sözdiziminde
satırlı ifadeler değişken adı ötesine girintili olmalıdır:
main = do
let foo = case 0 of
0 -> 4
return()
Tamam ama
main = do
let foo = case 0 of
0 -> 4
return()
değildir.
Burada açık bir şekilde açıklanmıştır. Bunun nedeni, '' bir blok (“do' gibi”) birden fazla ciltleme ile yapabilmemizdir - eğer hizalanmamış bir girinti stili tercih ederseniz, 'Yapmak' ile olur. –
Bu beni sürekli ısırıyor. Girintiyi geçmesini bekleyeceksin, ama aslında değişken ismin ötesindeki girinti. Değişkeni kendi çizgisine koymak, ama oldukça çirkin görünüyor. – MathematicalOrchid
Bunu görmek gerçekten zor. İki örnek arasındaki fark, '0 -> 4' satırının başlangıcındaki boşluktur. – greg7gkb
Girinti kurallarını kontrol ettiniz mi? – jozefg