판단 함수 조합은 결과와 평가 여부를 함께 결정한다

단락 평가 뒤쪽에 로그나 카운터 변경이 있으면 호출 순서가 외부 상태까지 바꿉니다.

조합왼쪽 결과오른쪽 호출
A && Bfalse호출 안 함
A && Btrue호출
A || Btrue호출 안 함
A || Bfalse호출
negate(A)A 평가결과 반전

핵심: Predicate는 가능하면 순수하게 두고 정확히 한 번 효과는 명령 경계로 분리합니다.