- 프로그래밍의 어려움을 형식 기호 탓으로 돌리는 관점은 기계가 자연어를 이해하면 인간의 부담이 줄어든다는 잘못된 기대를 낳음
- 초기 기계어의 위험은 고급 프로그래밍 언어로 일부 완화됐지만, 잘못된 답이 오류 메시지로 바뀌었을 뿐 정밀한 지시가 필요하다는 본질은 남아 있음
- 자연어 인터페이스는 노동을 나눠 갖는 해법이 아니라, 인간과 기계 사이의 협력·소통 비용을 키워 양쪽의 부담을 늘릴 수 있음
- 수학의 발전은 Vieta, Descartes, Leibniz, Boole 같은 인물들이 만든 형식 기호 체계가 복잡한 사고를 다루는 핵심 도구였음을 보여줌
- 자연어 프로그래밍을 기본 입출력으로 삼았다면 컴퓨터 과학은 결국 사용 가능한 형식 시스템으로 되돌아가기 위한 긴 우회로가 됐을 가능성이 큼
자연어 프로그래밍을 향한 기대와 착각
- 자동 계산 초기부터 일부 사람들은 프로그래밍이 형식 기호에 요구되는 주의와 정확성을 필요로 한다는 점을 결점으로 여김
- 기계가 잘못된 명령도 엄격히 수행하는 점을 문제 삼았고, 사소한 사무적 오류를 거부하는 더 “분별 있는” 기계를 기대함
- 기계어는 중복성이 거의 없어 인간과 기계 사이의 위험한 인터페이스였음
- 이에 대응해 고급 프로그래밍 언어가 개발됨
- 시간이 지나면서 많은 사소한 실수가 잘못된 답 대신 오류 메시지로 이어지는 개선이 생김
- 그러나 프로그래밍 언어에 대응하는 추상 기계는 여전히 주어진 명령을 충실히 수행하는 자동기계이며, 무의미한 명령도 실행할 수 있음
- 자연어로 기계를 지시하자는 제안은 기계를 더 복잡하게 만들더라도 인간의 부담을 줄일 수 있다는 논리에 기대고 있음
- 이 논리는 “형식 기호 사용 의무”를 어려움의 원인으로 볼 때만 그럴듯함
- 인터페이스 변경은 노동을 단순히 나누는 일이 아니라, 인터페이스를 가로지르는 협력과 소통 비용을 추가함
- 경험적으로 인터페이스 변경은 양쪽의 작업량을 크게 늘릴 수 있으며, 그래서 “좁은 인터페이스” 선호가 커짐
형식 기호가 사고를 확장하는 방식
- 수학의 역사에서 자연어적·그림 중심 방식은 반복적으로 한계를 드러냄
- 그리스 수학은 언어적·그림 활동에 머물러 정체됨
- Moslem “algebra”는 상징 사용을 잠깐 시도한 뒤 수사적 방식으로 돌아가며 사라짐
- 서유럽은 Vieta, Descartes, Leibniz, 이후 Boole 같은 인물들의 의식적으로 설계된 형식 기호 덕분에 중세 스콜라주의의 언어적 정밀성 시도에서 벗어남
- 형식 텍스트의 장점은 정당한 조작이 몇 가지 단순한 규칙만 만족하면 된다는 데 있음
- 이 규칙성은 자연어에서 피하기 어려운 여러 종류의 무의미함을 배제하는 도구가 됨
- 형식 기호 사용은 부담이 아니라 특권에 가까움
- 형식 기호 덕분에 예전에는 천재만 할 수 있던 일을 학생들도 배울 수 있음
- 1977년 한 기술 보고서 서문에서 “명확성을 위해 논리 연결사의 표준 기호조차 피했다”는 문장은 이런 오해가 한 사람에게만 국한되지 않음을 보여줌
- 자연어의 “자연스러움”은 무의미함이 명백하지 않은 문장을 쉽게 만들 수 있다는 점으로 이어짐
자연어만 허용된 세계의 컴퓨터 과학
- 처음부터 정보처리 장비의 입출력이 모국어로만 이뤄졌다면, 컴퓨터 과학은 충분히 정의된 형식 시스템으로 이동하기 위한 “black art”에 가까웠을 것임
- 사용 가능한 수준으로 인터페이스를 좁히려면 전 세계의 지성이 필요했을 것임
- 인류 역사를 고려하면 다시 수천 년이 걸렸을 수도 있음
- 서구의 교육 흐름이 지적 훈련에서 멀어지며 사람들이 자기 언어를 다루는 능력이 크게 떨어졌다는 우려도 붙어 있음
- 과학 논문, 기술 보고서, 정부 간행물 등에서도 면밀히 읽으면 의미 없는 말이 많다는 점을 예로 듦
- 이 현상은 “The New Illiteracy”로 불리며, 자연어 프로그래밍 실패를 예측할 기술적 통찰이 없는 지지자들에게도 경고가 됨
- 자연어로 프로그래밍되는 기계는 Dutch, English, American, French, German, Swahili 어떤 언어를 쓰더라도 만들기만큼 사용하기도 어려울 것이라는 의심으로 마무리됨