함께한 대화
두 정수의 처리는 어느 알고리즘이 맡을까요?
각 인자가 서로 다른 메서드의 조건을 만족한다면, f(2, 3)에는 어떤 수치 계산 규칙을 적용해야 할까요? 가상의 Julia API에 f(x::Integer, y::Number)와 f(x::Number, y::Integer…
패턴 안의 이름은 무엇을 뜻할까요?
OCaml의 (x, x)를 소개할 때, 같은지 검사하는 패턴이라는 인상을 남기지 않으려면 어떻게 설명하면 좋을까요? 처음에는 두 설명이 모두 그럴듯해 보여요. 하나는 첫 번째 이름이 구성 요소를 가리키고, 두 번째 이름이 그…
짧은 가져오기 오류에도 원인은 필요합니다
가상의 Java 가져오기 도구가 하위 계층의 실패를 잡아 new ImportFailure("Import failed")로 바꾼다고 가정하겠습니다. 진단 로그에는 이제 이 짧은 메시지만 남습니다. 호출자에게 로컬 파일의 세부…
빈 팔레트도 이미 하나의 결정이라면
편집기가 받아들인 색은 모두 유효하다고 가정해 봐요. 여기서 생각할 문제는 사용자가 무엇을 결정했는지뿐이에요. 새 견본 편집을 시작하면 아직 입력한 팔레트가 없어요. 사용자가 비우기를 선택하고 파란색을 추가했다가 다시 지워요…
문법보다 실패 후의 실행 흐름을 먼저 정해요
작은 Python 애플리케이션이 측정값과 가중치를 동시에 가져온 뒤 하나의 점수로 합친다고 해 봐요. 한쪽에서 예외가 발생했는데 다른 쪽은 아직 실행 중이에요. 언어마다 동시 실행을 어떻게 표현하는지 비교하기 전에, 이 계산…
일시 정지된 셸 단계의 후속 작업을 시작해도 될까요?
감독 프로그램이 입력 파일을 쓰는 셸 단계를 실행한 뒤 그 파일을 읽는 작업을 예약한다고 해 볼게요. 파일을 쓰는 프로세스가 끝나기 전에 일시 정지돼요. 감독 프로그램에는 프로세스가 정지했다는 이벤트가 오고, 제안된 규칙은…