구체적인 모나드 각각의 용도는 알겠는데
이걸 하나의 추상화 계층으로 쓰는거면
모나드를 바꾸는걸로 문맥을 다르게 보는게 돼야하는데
막상 코드로 짜려니까 아무생각이 안난다..