그의 1990 튜링 상 연설 에서 Fernando J. Corbató는 복잡한 시스템이 불가피하게 실패하는 이유를 열거했습니다. 결론적으로 그는 실패 가능성을 줄이는 몇 가지 제안을한다. 그는 하나의 아이디어를 다음과 같이 나열합니다.
디자인이나 합성을위한 제약 된 언어는 강력한 방법론이다. 프로그래머 나 디자이너가 관련없는 아이디어를 표현하지 못하게함으로써 가능한 오류 영역이 훨씬 더 제한됩니다.
"제한된 언어"는 무엇을 의미합니까?
잠시 동안 나는 제약 조건 프로그래밍을 고려했다 . 그러나 제약 조건 프로그래밍은 프로그램의 솔루션 공간을 제한하는 것입니다. 프로그래머에게 힘을 실어주는 도구입니다. Corbató가 언급하는 기능은 실제로 프로그래머를 제한하거나 적어도 코드를 작성하는 경향이있는 것으로 보입니다.
나의 두 번째 생각은 그가 보수적 인 프로그래밍 언어를 언급하고 있다는 것이다. Corbató는 1960 년대와 1970 년대에 수행 된 작업으로 Turing 상을 받았습니다. 그가 많은 펀치 카드를 다루었다는 것이 나의 이해입니다. 펀치 카드를 본 적이 없으므로 프로그래밍 방법을 모르지만 펀치 카드 프로그래밍이 매우 자유 롭다고 생각할 수 있습니다. 유형 검사, 정적 분석 등의 개념이 단순히 존재하지 않았다고 생각합니다. 그렇다면 코바 토는 아마도 개발자가 멍청한 실수를 저 지르지 못하게하는 언어에 대한 아이디어를 말하는 것일까 요? 이것은 사실이 아닌 것 같습니다. 안전 점검 및 데이터 모델링은 간결함과 아무 관련이 없습니다. "무관 한 아이디어를 허용하지 않습니다."