System.IO의 공식 소스는 어디에 있습니까?
나는 여기를 보았지만 거기에 없습니다.
소스를 클릭하면 여기에 없다고 표시됩니다. 이 페이지 의 다른 링크 가 작동하는 것 같아서 혼란 스럽 습니다.
편집하다:
나는 이것을 찾았다:
instance Monad IO where
{-# INLINE return #-}
{-# INLINE (>>) #-}
{-# INLINE (>>=) #-}
m >> k = m >>= \ _ -> k
return = returnIO
(>>=) = bindIO
fail s = failIO s
bindIO :: IO a -> (a -> IO b) -> IO b
bindIO (IO m) k = IO $ \ s -> case m s of (# new_s, a #) -> unIO (k a) new_s
여기 .
어떤 인터페이스 System.IO
가 노출되어야 하는지 알고 싶다면 Haskell Report를 확인하세요. 나는 이것이 명목상 사양이라고 생각합니다.
내부 구현을 원한다면 ... 음, 그것은 컴파일러에 고정되어 있습니다. GHC 소스 코드를 읽어야합니다.
편집 : IO
특별합니다. IO
마법입니다. 소스를 보면 흥미로운 사실을 알 수 없습니다. I / O 작동 방식에 대한 컴파일러의 내부 저수준 표현을 조작하는 코드 묶음 일뿐입니다. 이해하려는 것이 무엇이든 여기서 깨달음을 찾지 못할 것입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다