0
Ben haskell girinti let
ve where
Haskell girinti blok
özellikle do
blok hakkında çok karıştı "do-bloğundaki son deyimi bir ifade olmalı" I got satır action <-
"Son ekstresinde aşağıdaki hata Yap-blok bir ifade olmalıdır "Bunu nasıl düzeltmeliyim?
loop
ihtiyaçların vücudun kendi adından daha fazla girintili edilecek
type NeovimRead = Neovim r st Text
type NeovimWrite = Text -> Neovim r st()
consumeLoop :: Server -> NeovimRead -> NeovimWrite -> Neovim r st()
consumeLoop server read write = do
status <- liftIO $ takeMVar (status server)
if status == Running
then loop
else liftIO $ putMVar (status server) status
where loop = do
action <- liftIO $ readaction server
case action of
ReadBuffer -> do
text <- read
liftIO $ putMVar (buffer server) text
WriteBuffer -> do
text <- liftIO $ takeMVar (buffer server)
write text
liftIO $ putMVar (status server) Running
consumeLoop server read write
Teşekkürler. Ama böyle olmasının bir nedeni var mı? – darwinsenior
Çünkü 'do' bloğunun gövdesi fonksiyonun bir parçası değildi, ve sanki boş bir 'do' bloğunuz varmış gibi oldu, bu yüzden yaptığınız hata mesajını aldınız. –