[Haskell] 다중 표현식
하스켈의 함수는 기본적으로 하나의 표현식만을 몸체로 갖는다.
명료하게 반환값을 표현하기 위해서일 것이다.

그래서 둘 이상의 표현식을 담으려고 하면, 에러를 던진다.

do 블럭
저걸 돌아가게 만들고 싶다면, do를 앞에 붙이면 된다.
그럼 잘 돌아간다.
이건 내부적으로 각 표현식을 모나드로 감싸고 순차적으로 실행한다. 그리고 마지막 모나드 값을 반환한다.
이런 변환 동작은 컴파일러에 의해 은밀하게 처리된다.
then 연산자(>>)
이건 위에서 사용했던 do 표현의 다른 방법이다.
각 표현식을 >>로 묶어주면 do 표현과 동일하게 동작한다.

참조
https://en.m.wikibooks.org/wiki/Haskell/do_notation
https://1ambda.github.io/haskell/intro-to-haskell-4/
https://stackoverflow.com/questions/40832232/what-does-haskells-do-keyword-do