Default 조합의 실행 순서

네 조합은 서로 이어지는 단계가 아니라 각 계약 안에서 평가 방향과 중단 조건을 정한다.

Function.compose

before → current

인수 함수 먼저

Function.andThen

current → after

현재 함수 먼저

Predicate.and

left false → stop

오른쪽 판단 생략

Consumer.andThen

first throws → stop

두 번째 효과 생략
관찰점side effect가 있으면 순서와 호출 여부가 결과의 일부가 된다.

핵심: 조합 함수는 가능하면 순수하게 유지한다.