본문 바로가기

공부/프로그래밍언어론

1950년대: 최초의 프로그래밍 언어

1950년대 초반

 - 기계어 사용(프로그램 저장 방식)

   -> 기호화 -> 어셈블리 언어: 기계어를 대신할 기호(simbol)나 연상기호(mnemonics)를 사용
                     - 기계 의존적

                     - 자연어와 상이한 구문

1950년대 중반

 - Fortran(Formula TRANslation)

  • 1954 – 57, John Backus에 의해 고안된 최초의 고급 언어
  • Fortran II, Fortran IV, Fortran 66, Fortran 77, Fortran 90
  • Fortran 컴파일러는 효율적인 기계어 코드를 생성 -> 언어의 긴 생명
  • 배열, 반복 구조, 분기문, 부프로그램 등의 특징은 이후 언어에 큰 영향

1950년대 후반

 - COBOL(Common Business-Oriented Language)

  • 상업자료처리용
  • 1959-60, 미국방성의 Grace Hopper에 의해 고안됨
    • 설계 목적
      - 사용자들이 프로그램을 읽고, 이해하기 쉽게 함
  • 언어의 특징
    • 레코드 구조 도입
    • 자료구조와 실행 부분을 분리
    • "PICTURE"를 써서 원하는 출력 양식의 가변성 부가

 - ALGOL 60(ALGOrithmic Langugae 60)

  • 알고리즘 기술, 범용
  • 1958-60, 알고리즘 서술을 위한 일반적인 표현 언어
  • 언어의 특징
    • 양식의 자유화(free format), 구조적 명령문, begin-end 블록,
      변수 타입선언, 되부름, call-by-value 매개 변수 등의 개념 소개
    • 스택 기반 실행 환경 도입
    • Backus-Naur Forms(BNF)을 최초로 사용

 - Lisp(LISt Processor)

  • 기호연산, 리스트 처리용
  • 1950년대 후반, MIT의 John McCarthy에 의해 고안
    • 설계 목적
      - 일반적인 리스트 구조와 함수의 적용을 기본으로 함
      - 인공지능 분야 응용
  • 언어의 특징
    • 통일된 자료구조, S-expression
    • 기본적인 계산 표기법에 함수 적용
    • garbage collection 개념 소개(사용하지 않는 기억장소를 자동으로 재생)
    • 되부름의 원조(현재 거의 모든 프로그래밍 언어에서 제공함)

 - APL(A Programming Language)

  • 배열처리용
  • 1950년대 후반-60년대 초반, 하버드대의 K.Iverson에 의해 고안
  • 언어의 장점
    - 배열과 행렬에 대한 연산이 쉽고, 강력한 프로그래밍
  • 언어의 단점
    - 제어구조가 없음
    - 특정 터미널에만 있는 그리스 기호 사용
    - 작성된 프로그램 이해 난이함