Non-interfering 실행

읽기 source와 쓰기 result를 분리해 traversal membership을 안정화한다.

  1. Snapshot

    source membership을 복사한다.

  2. Filter

    snapshot 원소만 읽는다.

  3. Map

    별도 value를 만든다.

  4. Result

    새 immutable list로 게시한다.

핵심: mutable element 내부까지 격리하려면 immutable domain 값이나 더 강한 snapshot이 필요하다.