본문 바로가기

공부/프로그래밍언어론

1970년대: 간결성, 추상화, 연구 사항

1970년대 초반 언어의 특징

  • 60년대의 혼란 이후 -> 간결성과 일관성 추구
  • Niklaus Wirth: Algol 68 디자인에 반발 (방대성)
    Wirth와 Hoare는 Algol W 제안

1970년대 초반에 등장한 언어

 - Pascal (1971, Wirth)

  • 작고, 간결하고, 효율적이고, 구조적이며, 프로그래밍 교육용
  • 분리 컴파일, 유용한 문자열 조작, 입출력 기능 -> 삭제 또는 축소 (성공적)

 - C 언어 (1972, Dennis Ritchie)

  • Pascal 과는 다른 각도의 간결성
  • 수식 위주로  형 시스템과  실행환경 축소하드웨어 접근 용이
  • 중급 언어로 분류 : 기계 접근성 강화 (고급 언어와 상반 개념)
  • 운영체제 프로그래밍용 (Bliss(1971), Forth(1971))
  • C 언어로 작성된 UNIX 성공 -> C 언어 대중화

C, Pascal -> 간결성, 전체적인 디자인의 일관성: 성공의 요소

1970년대 중, 후반 언어 특징

  • 자료 추상화, 병행성, 증명 등의 메커니즘을 집중적으로 시도
  • 1970년대 중, 후반에 등장한 언어
  • CLU(1974-77, MITBabara Liskov)
    • 추상화 기법을 위한 일관성 있는 접근 방식
      자료 추상화
      , 제어 추상화, 예외처리
    • 자료 추상화: cluster (Simulaclass와 유사)
    • 제어 구조:  iterator - 일반성
    • 예외처리: Ada와 비슷한 구조 제안

1970년대 중, 후반에 등장한 언어

 - Euclid(1976-77, 토론토(Toronto) 대학)

  • Pascal을 개선한 언어
  • Pascal의 단점인 이명(aliasing) 개선, 자료형의 추상화, 프로그램 증명 보조 추가
  • 프로그램의 형식적 검증을 목적으로 한 최초 언어

 - Mesa(1976-79, XeroxPalo Alto 연구소)

  • Pascal 구조에 모듈 구조, 예외처리기, 병행성, 병렬 프로그래밍의 개념 추가
  • 시스템 프로그래밍용 -> Modula-2 메커니즘 고안에 지대한 영향