본문 바로가기
[ Computer Science ]

[Programming Language] 1. 프로그래밍 언어론 개요

by dev charlotte 2024. 10. 31.

프로그래밍 언어론에서 무엇을 왜 배우는가

 

사피어 호프 가설

- 언어가 사고와 행동에 미치는 영향을 설명하는 이론

- 강한 형태 : 언어가 사고를 결정하며 언어적 범주가 인지적 범주를 제한하고 결정

- 약한 형태 : 언어적 범주와 사용이 사고와 특정 비언어적 행동에 영향을 미침

- 우리가 사용하는 언어가 문화와 인지 범주에 따라 사고 방식에 영향을 미칠 수 있음

- 프로그래밍 언어 역시 사고와 문제 해결 방식을 형성한다고 제안

 

언어를 익히는 철학적 이유

- 비트겐슈타인 : 내 언어의 한계는 내 세계의 한계를 의미함, 언어의 한계가 사고와 인식의 범위를 결정함

- 앨런 제이 펄리스 : 프로그래밍에 대한 사고를 변화시키지 않는 언어는 배울 가치가 없음, 언어가 사고를 형성하고 프로그래밍 언어가 새로운 사고 방식을 제공할 수 있어야 함.

 

프로그래밍 언어론을 배우는 실질적인 이유

 

  • 컴퓨터 과학 전반에 대한 이해를 향상.
  • 컴퓨터과학 및 정보기술 커뮤니티의 어휘 습득.
  • 새로운 언어를 배울 수 있는 능력 향상.
  • 생산성을 높이는 언어를 선택할 수 있는 안목.
  • 프로그램 실행 메커니즘에 대한 이해 제고.

 

- 프로그래밍 언어 학습이 단순한 코드 작성 이상의 가치를 지니며, 컴퓨터 과학의 기초를 탄탄히 다지기 위함

 

Perlis의 에피그램

  • 틀린 프로그램을 작성하는 것이 옳은 프로그램을 이해하는 것보다 쉽다.”
  • “프로그래밍 언어가 저수준일수록 불필요한 것에 주의를 기울이게 한다.”
  • “반복문이 없고 구조화된 변수가 없는 프로그램은 작성할 가치가 없다.”
  • “컴퓨터와 인간이 공생하는 관계에서 조정해야 할 것은 인간이다. 컴퓨터는 조정할 수 없다.”

 

- 프로그래밍 언어와 사고의 관계에 대한 통찰, 언어가 사고의 깊이와 품질을 결정할 수 있음

 

프로그래밍언어론에서 배우는 것은

철학적인 측면에서의 추상화와

실제적인 측면에서의 컴퓨터 관련 커뮤니티의 기본 어휘와 프로그래밍 실력