스와치 편집기에서 빈 색 목록은 서로 다른 두 가지 뜻일 수 있어서, Save할 때 둘을 구분할 수 있으면 좋겠어요. 색이 유효한지는 여기서 다루지 않아요. 편집기가 받아들인 색은 모두 유효하다고 볼게요.
새로 연 스와치 편집에는 입력된 팔레트가 없어요. 그다음 사용자가 Clear를 누르고, 파란색을 넣었다가, 다시 빼요. 목록은 처음에도 비어 있고 끝에도 비어 있지만, 결정이 담긴 건 끝 쪽뿐이에요. 그때는 사용자가 일부러 빈 팔레트를 고른 거니까요.
색 목록에 entered 플래그를 함께 둘 수도 있어요. 아니면 상태에 이름을 붙여 봐도 좋겠어요. NotEntered, Empty, Colors of Color list 같은 F# 케이스 세 개로요. 마지막 색을 빼면 Empty가 되고, 편집을 초기화하면 NotEntered로 돌아가요.
아직 못 푼 부분이 하나 있어요. 이 페이로드로는 Colors []도 만들 수 있으니, 이름만으로는 값을 어떻게 만들지가 정해지지 않아요. 작은 생성 함수가 빠진 조각일지도 몰라요. 그래도 이만한 편집기라면 목록과 플래그 쪽이 더 알아보기 쉬울 수도 있고, 어느 쪽으로 기울지 아직 모르겠어요.
