다익스트라, 1978년 글에서 자연어 프로그래밍은 기계 부담만 키운다고 반박
- 다익스트라는 자연어 프로그래밍이 기계의 부담만 키울 뿐 인간의 수고를 줄이지 못한다고 주장함
- 인터페이스를 바꿔도 작업이 사라지지 않고 양쪽에 협업 비용이 더해져서 업계가 좁은 인터페이스를 선호하게 됨
- 그리스 수학은 말에 머물러 정체됐고 이슬람 대수학은 수사학으로 돌아가 쇠퇴했으며 Vieta, Descartes, Leibniz, Boole의 형식 기호 체계가 근대를 열었다고 설명함
- 형식 텍스트는 몇 가지 단순한 규칙만 지켜도 조작이 성립해서 자연어로는 막기 힘든 무의미한 주장을 걸러냄
Hacker News opinions
LLM이 잘 되는 건 학습 데이터에 암묵적 뉘앙스가 어느 정도 담겨 있어서인데, 명세 중심으로 가려면 프롬프트를 엄청 자세하게 써야 함.
사람도 15년 넘게 자료 먹고 자라고, 회의에서 매일 다시 설명 들어야 뭔가 나오잖아. 그게 그거 아님?
데모나 스타터 템플릿에선 대충 넘어가는데, 성숙한 소프트웨어는 결국 모든 디테일이 다 중요해짐.
1978년 원문은 타자기로 친 이중 하이픈이 대시로 바뀐 거임. Hermes Ambassador라 고정폭이었다고 함. 그러니까 em dash 보고 AI 글이라 하는 건 의미 없음.
컴파일러는 의미를 그대로 보존하는데, AI는 스펙을 코드로 바꾸면서 가능한 프로그램이 여러 개 나옴. 그래서 AI는 컴파일러보다 개발자를 대체하는 쪽에 가까움.
아니 자연어를 높은 추상화로만 보면 안 됨. 키 배열 세팅하라는 식의 낮은 수준 지시도 자연어임. 그건 LLM이 컴파일러 역할을 하는 명령형 언어랑 비슷함.
나는 git에 추적되는 게 곧 프로그래밍 언어라고 봄. 저장소가 자연어를 1차 산출물로 추적하기 전까진 다익스트라 주장이 유효함.
고객과 개발자 사이 명세는 원래 자연어였음. 1978년엔 사람만 변환할 수 있다고 믿을 만했지만 지금은 아님.
Brooks의 본질적 복잡도 얘기랑 맞닿아 있음. 모호한 요청에 AI가 최적해보다 평균적인 해법을 가져오는 게 문제인데, 그래도 충분히 괜찮으면 일자리 뺏을 수 있음.
법률 문장도 일종의 자연어 코드인데, 쓰기도 읽기도 고생스럽고 해석 여지가 무한함. 계약서도 돈 많은 쪽이 원하는 대로 주무를 수 있음.