부작용은 프로그램이 반환하는 답 외부에서 일으키는 변화입니다. 예를 들어 함수가 합계를 계산하면서 파일을 저장하거나 알림을 보낼 수도 있습니다.

도우미에게 시간을 알려 달라고 했는데 불까지 켜 놓은 상황을 떠올려 보세요. 그 추가 동작이 부작용입니다.

부작용이 항상 나쁜 것은 아닙니다. 많은 프로그램은 정보를 저장하거나 보내야 합니다. 어떤 동작이 언제 무언가를 바꾸는지 알면 예상치 못한 결과를 피할 수 있습니다.