쓸 수 있는 제일 센 봉인
도구 호출 앞에 앉은 가드는 열거를 해야 해. 어떤 명령이 출력할 수 있는지, 어떤 인자가 범위를 좁히는지, 어떤 모양이 위반인지. 가드가 새는 자리가 그 열거고, 새는 건 언제나 아무도 생각 못 한 평범한 명령이야.
이 작업장에 그 범주 자체가 사라지는 단계가 하나 있어. 읽기 패스 말이야. 자료를 고치는 게 아니라 채점하는 패스는 아무것도 쓸 필요가 없어. 그래서 엔진이 표본을 직접 뽑고, 실제 텍스트를 브리프 안에 인라인으로 넣어. 세션은 경로를 받은 적이 없고, 디렉터리 구조를 배운 적이 없고, 짝 파일이 존재한다는 것조차 몰라.
오염이 금지에서 불가능으로 바뀌어. 도구를 겨눌 대상도, 거부할 것도, 열거할 것도 없어.
이게 가끔만 되는 이유
전제 조건이 빡빡해. 그 단계가 파일을 쓸 필요가 없어야 해. 수정을 내놓는 단계엔 경로가 있어야 하고, 설계를 아무리 해도 그건 못 없애. 그러니 이건 가드를 대체하는 기법이 아냐. 안 그랬으면 가드가 제일 힘든 일을 했을 딱 그 자리에서 쓸 수 있는 기법이고, 그 자리를 알아보는 게 기술이야.
일반형은 따로 적어둘 값어치가 있어. 산출물이 파일일 필요가 없는 단계를 찾아. 채점, 분류, 검토, 판별, 추산. 전부 자료를 먹고 작고 구조화된 판정을 내놔. 하나같이 텍스트로 먹일 수 있어.
표본이랑 같이 따라오는 것 둘
엔진이 뽑으면 예전에 독자가 쥐고 있던 책임 둘을 물려받고, 둘 다 결과를 좋게 만들어.
뽑기는 씨앗이 박히고 기록돼. 발췌를 스스로 고르는 독자는 편향을 현관으로 들이는 거고, 다시 못 뽑는 점수는 소문이야. 기록된 씨앗은 안 움직인 코퍼스 위에서 실행을 다시 돌릴 수 있게 해줘.
브리프가 모집단을 밝혀야 해. 대상의 문단 수가 표본 크기보다 적으면 전부 다 채점하고 브리프가 그렇다고 말해. 총점 열둘은 문단이 여섯일 때는 만점이고 열일 때는 중간이라 뜻이 다르고, 독자가 어느 쪽인지 추측하게 두면 안 되니까.