Son zamanlarda, Hackage'deki çekirdek kitaplıklarına bakmaya başladım ve anlamadığım yinelenen bir deyim var.ST monad bildiriminin sözdizimi
instance Monad (ST s) where
{-# INLINE (>>=) #-}
(>>) = (*>)
(ST m) >>= k
= ST (\ s ->
case (m s) of { (# new_s, r #) ->
case (k r) of { ST k2 ->
(k2 new_s) }})
Özellikle, (# new_s, r #)
anlamıyorum: Burada ST module den bir örnek. İkinci hashın kutudan çıkarılmış bir değere atıfta bulunduğunu sanıyorum, ama geri kalan kısım benim için bir gizem (muhtemelen "yeni devlet" ile ilgili bir şey).
Genel olarak, Haskell'de '' 'bir çeşit düşük seviye ve/veya ilkel şeyler yapıyor demektir. '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' – Lazersmoke