IO 모나드에 대한 깊은 이해를 하기 위해서에요 ㅎㅎ
부작용을 담은 모나드를 만들기 위해서 unsafePerformIO 를 사용하였고, 그것을 제가 만든 모나드로 안전하게 감싸서,
unsafePerformIO와 유사한
unsafePerformMyIO 를 만들어 보았습니다.
부작용은 unsafePerformMyIO 를 사용하기 전까지 발생하지 않으며,
부작용을 담은 코드는 MyIO 모나드 안에 담기게 됩니다.
안전하게 코드를 짜서 하나의 거대한 MyIO를 만든 후, 그것을 unsafePerformMyIO 로 실행시키면 됩니다 ㅎㅎㅎㅎ
번외편으로 ST모나드에 대해서도 만들어 볼만한데, 일단은 MyIO 먼저 만들고 오겠습니다.
재미있어요 ㅎㅎ
그리구 딱구기 아프고나서 많이 바꼈는데 딱구기 사랑해주세요 ㅠㅠㅠ
만들고나서 GHC구현이랑 비교해봐도 재미있을듯요
ㄷㄷ
딱국추