프로그래밍 언어론에서 무엇을 왜 배우는가
사피어 호프 가설
- 언어가 사고와 행동에 미치는 영향을 설명하는 이론
- 강한 형태 : 언어가 사고를 결정하며 언어적 범주가 인지적 범주를 제한하고 결정
- 약한 형태 : 언어적 범주와 사용이 사고와 특정 비언어적 행동에 영향을 미침
- 우리가 사용하는 언어가 문화와 인지 범주에 따라 사고 방식에 영향을 미칠 수 있음
- 프로그래밍 언어 역시 사고와 문제 해결 방식을 형성한다고 제안
언어를 익히는 철학적 이유
- 비트겐슈타인 : 내 언어의 한계는 내 세계의 한계를 의미함, 언어의 한계가 사고와 인식의 범위를 결정함
- 앨런 제이 펄리스 : 프로그래밍에 대한 사고를 변화시키지 않는 언어는 배울 가치가 없음, 언어가 사고를 형성하고 프로그래밍 언어가 새로운 사고 방식을 제공할 수 있어야 함.
프로그래밍 언어론을 배우는 실질적인 이유
- 컴퓨터 과학 전반에 대한 이해를 향상.
- 컴퓨터과학 및 정보기술 커뮤니티의 어휘 습득.
- 새로운 언어를 배울 수 있는 능력 향상.
- 생산성을 높이는 언어를 선택할 수 있는 안목.
- 프로그램 실행 메커니즘에 대한 이해 제고.
- 프로그래밍 언어 학습이 단순한 코드 작성 이상의 가치를 지니며, 컴퓨터 과학의 기초를 탄탄히 다지기 위함
Perlis의 에피그램
- 틀린 프로그램을 작성하는 것이 옳은 프로그램을 이해하는 것보다 쉽다.”
- “프로그래밍 언어가 저수준일수록 불필요한 것에 주의를 기울이게 한다.”
- “반복문이 없고 구조화된 변수가 없는 프로그램은 작성할 가치가 없다.”
- “컴퓨터와 인간이 공생하는 관계에서 조정해야 할 것은 인간이다. 컴퓨터는 조정할 수 없다.”
- 프로그래밍 언어와 사고의 관계에 대한 통찰, 언어가 사고의 깊이와 품질을 결정할 수 있음
프로그래밍언어론에서 배우는 것은
철학적인 측면에서의 추상화와
실제적인 측면에서의 컴퓨터 관련 커뮤니티의 기본 어휘와 프로그래밍 실력
'[ Computer Science ]' 카테고리의 다른 글
[Programming Language] 6. 구문 (4) | 2024.11.01 |
---|---|
[Programming Language] 5. 설계 원칙 (0) | 2024.10.31 |
[Programming Language] 4. 프로그래밍 언어 개발의 역사 (6) | 2024.10.31 |
[Programming Language] 3. 전체에 대한 개관 (6) | 2024.10.31 |
[Programming Language] 2. 추상화 (2) | 2024.10.31 |