➌ 이 함수는 목록을 모든 콘텐츠가 포함된 HTML 페이지로 변환하는 역할을 한다.
➍ 마지막으로 생성된 HTML 페이지를 본문으로 하는 HTTP 응답을 생성한다.
일단 함수의 시그니처, 즉 모든 입력과 출력의 타입을 정의하면 함수의 구현을 작성하기 전에도 원하는 대로 함수를 구성할 수 있는지 확인할 수 있다. 이 점은 함수형 프로그래밍의 가장 큰 즐거움 중 하나다. 심지어 구현을 작성하기 전에도 확인할 수 있다! 복잡한 동작은 함수를 조합하면 자연스럽게 나타난다. 결국 상태 공유로 인한 문제는 전혀 없이 코드를 구현하고 테스트할 수 있다.
메인 함수는 연쇄적으로 함수를 호출해야 한다.
fun getToDoList(request: Request): Response =
createResponse(
renderHtml(
fetchListContent(
extractListData(
request
)
)
)
)