언어의 맥락에 대한 재미있는 독서와 우리가 일을 끝내는 방법에 대해 :
Steven Pinker 의 생각의 물건
우리는 언어 구조에 대해 이야기하고 있습니다. 정보를 어떻게 전달하는지 (동일하지는 않습니다) 변수에 대한 주요 언어가 모두 독일어 인 코드로 작업했습니다 (코드는 이해하기 쉽지 않았습니다) ). 영어에는 본질적으로 프로그래밍에 더 적합한 것이 없습니다. 언어가 어떻게 구성되는지 직접적으로 벗어나면 아마도 나쁘지 않을 것입니다 . 그리고 이것은 여러 가지 이유로 정직 할 수 있습니다.
- 구조 부족 (우리가 원하는 곳에 주제 / 술어 / 명사 / 형용사를 넣을 수 있음),
- 우리의 말의 변경 가능성 (우리는 아무 것도 생략 할 수 있다고 느낀다)
- BIG ONE : 영어를 유창하게 아는 사람은 영어를 이해하지 못하는 사람보다 코드 섹션을 더 잘 이해하지 못합니다.
프로그래밍 언어가 "영어"를 사용하는 이유를 묻는 것은 주기율표에 여전히 'W'라는 문자가 텅스텐을 나타내는 이유를 묻는 것과 같습니다. 대부분의 사람들은 역사를 알지 못하면 왜 그런지 말할 수 없습니다. 그리고 프로그래밍 언어의 역사를 원한다면 펀치 카드, 바이트 명령어 및 어셈블리로 돌아 가야합니다.
어셈블리에는 주요 "영어"구문이 없지만, 사용자 자신을 미워하지 않고 기계 코드에 접근 할 수있을 정도로 가깝습니다. 또한, 고급 언어의 모든 구조적 요소는 그것을 즐기기에 충분히 미친 사람들에 의해 정기적으로 구현 될 수 있습니다. LD, MV, ST, BRA 및 나머지 명령어 세트는 영어와 전혀 같지 않지만 완벽하게 읽고 완전한 의미를 얻을 수 있습니다.
우리는 어셈블리에서 LD 또는 MV의 동일한 의미를 더 높은 수준의 구문에 할당합니다. 변수의 의미를 알 필요가 없으며 많은 경우 내 목록의 # 2 때문에 영어로되어 있지 않은 경우가 많습니다. int, str, enum 등과 같은 식별자 세트는 더 이상 작업하지 않는 것을 알려주는 방법입니다. int 대신에 식별자가 갈매기 라면, 우리 는 영어가 아니라 갈매기가 코딩 문맥에서 갈매기가 무엇을 의미하는지 알 것입니다.
TL; DR : 프로그래밍 언어는 다른 언어와 마찬가지로 이해하기 위해 교육이 필요합니다. 명령이 스페인어, 독일어 또는 러시아어 대신 영어로 된 이유는 공식 언어 구문의 식별자에 다소 적합한 영어의 일부 필수 구문에 비해 난해하고 역사적 일 가능성이 높습니다.