플로우매틱스

FLOW-MATIC
플로우매틱스
패러다임필수적
설계자레밍턴 랜드, 그레이스 호퍼
처음 등장한1955(표준)
플랫폼유니백 I
영향을 받다
산술적
영향받은
수학-매틱, AIMACO, 코볼

FLOW-MATICB-0(비즈니스 언어 버전 0)으로 알려진 최초의 영어 데이터 처리 언어입니다.1955년부터 1959년까지 Grace Hopper가 이끄는 Remington RandUNIVAC I를 위해 개발되었으며, COBOL의 발전을 도왔다.

발전

Hopper는 비즈니스 데이터 처리 고객이 다음과 같은 수학적 [1]표기법에 불편함을 느꼈습니다.

저는 예전에 수학 교수였어요.그 때 나는 수학을 배우지 못하는 학생이 일정 수 있다는 것을 알았다.그 후, 저는 ①비즈니스맨의 컴퓨터 사용을 용이하게 하는 일을 맡았습니다.나는 그들이 수학을 배울 수 있느냐 없느냐가 아니라 배울 수 있느냐가 문제라는 것을 알았다.[…] 그들은 '그 상징들을 버려라- 나는 그것이 무엇을 의미하는지 모른다. 나는 상징들을 배울 시간이 없다.'라고 말했다.나는 데이터 처리 담당자가 수학 기호를 사용하는 것을 원하는 사람들에게 부통령이나 대령이나 해군 제독에게 그 기호를 가르치는 첫 번째 시도를 하는 것에 대한 답변을 제안합니다.내가 그것을 해 봤다고 장담한다.¨

1953년 말, 그녀는 데이터 처리 문제를 영어 키워드를 사용하여 표현해야 한다고 제안했지만, 랜드 경영진은 그 아이디어가 실현 불가능하다고 생각했다.1955년 초, 그녀와 그녀의 팀은 그러한 프로그래밍 언어에 대한 사양을 작성하고 [2]프로토타입을 구현했다.FLOW-MATIC 컴파일러는 1958년 초에 공개되어 1959년에 거의 [3]완성되었습니다.

혁신과 영향력

FLOW-MATIC은 영어와 같은 [3]문장으로 연산을 표현한 최초의 프로그래밍 언어입니다.또, 데이터의 설명과 조작을 명확하게 구별한 최초의 시스템이기도 했습니다.데이터 정의 언어는 실행 가능 문장과 달리 영어와 같지 않았습니다. 대신 데이터 구조는 미리 인쇄된 [3]양식을 작성하여 정의되었습니다.

FLOW-MATIC과 그 직계 후손인 AIMACO 코볼은 [4]다음과 같은 요소를 통합하였다.

  • 입력 및 출력 파일 및 인쇄 출력을 미리 정의하여 INPUT 파일, OUTPUT 파일 및 (HSP) 고속 프린터 출력으로 구분합니다. INPUT <FILE-NAME> <FILE-LETTER>;OUTPUT <FILE-NAME> <FILE-LETTER>;HSP <FILE-LETTER>를 클릭합니다.[5]
  • 데이터명의 인정(IN또는OF(조항).
  • IF END OF DATA (AT END)파일상의 조항READ운용을 실시합니다.
  • 비유 상수ZERO(일반적으로ZZZ...ZZZ, 여기서의 개수는Zs 표시 정밀도).
  • 프로그램을 섹션으로 나누고 프로그램의 다른 부분을 분리합니다.흐름-매틱 섹션은 (환경과), (데이터과), (절차과)를 포함한다.

샘플 프로그램

FLOW-MATIC 프로그램의 [6][7]예:

(                 0) 입력 인벤토리 파일-A 가격 파일-B; 출력 가격-INV 파일-C 비가격-INV 파일-D; HSPD.. (1) 제품 번호(A)와 제품 번호(B) 비교; 만약 더 큰 값이 작업 10으로 이동한다면;VE 단가(B)에서 단가(C)로. (7) 항목 C. (8) 항목 A. (8) 데이터고의 종료에서 운영 14. (9) 데이터고의 종료로. (10) 데이터고의 종료에서.6; 그렇지 않으면 조작 15로 이동합니다. (15) B. (16) 클로즈아웃 파일 C. D. (17) 정지. (종료)

메모의 예시

  1. 이 샘플에는 프로그램의 실행 가능한 스테이트먼트인COMPILER부분.레코드 필드PRODUCT-NO그리고.UNIT-PRICE에 정의되어 있을 것입니다.DIRECTORY(앞에서 설명한 바와 같이) 영어 구문을 [8]사용하지 않았습니다.
  2. 파일은 FILE-LETTER 끝에 있는 문자로 참조됩니다.예: FILE-A는 나중에 A에 의해서만 참조되며 다음 코드에서 참조하기 쉽게 되어 있습니다.
  3. 조작은 0..n부터 중단되지 않는 순서로 번호가 매겨지며, 반대의 문구가 도달/실행(실행)(JUMP 등)되지 않는 한 그 순서로 실행됩니다.
  4. 가장 높은 번호의 조작은, 프로그램을 정지하는 조작입니다.
  5. FLOW-MATIC에 대한 훨씬 더 자세한 개요는 FLOW-MATIC 프로그래밍[9] 시스템 매뉴얼에서 확인할 수 있습니다.

메모들

  1. ^ 호퍼(1959) 페이지 198
  2. ^ 호퍼(1978) 페이지 16
  3. ^ a b c 샘트(1969년) 페이지 316
  4. ^ Sammet(1978) 페이지 204
  5. ^ Remington Rand Univac, Sperry Rand Corporation 부문(1957년).플로-매틱 프로그래밍 시스템 페이지 30
  6. ^ 스페리 랜드(1957) 페이지 7
  7. ^ 샘트(1969년) 페이지 323
  8. ^ 호퍼(1978) 페이지 18
  9. ^ Remington Rand Univac, Sperry Rand Corporation 부문(1957년).플로매틱 프로그래밍 시스템

레퍼런스

  • 호퍼, 그레이스(1978년).기조 연설, 프로그래밍 언어의 역사 I. ACM. 페이지 16-20. ISBN0-12-745040-8
  • 호퍼, 그레이스(1959)"자동 프로그래밍: 현황과 미래 동향", 사고 과정의 기계화, 국립 물리 실험실 심포지엄 10.여왕 폐하의 문방구 사무실. 페이지 155–200, 인용.
  • 샘트, 진(1969년).프로그래밍 언어: 역사와 기초프렌티스홀, 페이지 316-324ISBN 0-13-729988-5
  • 샘트, 진(1978년)."코볼의 초기 역사", 프로그래밍 언어역사 I. ACM. 페이지 199–243.ISBN 0-12-745040-8
  • Sperry Rand Corporation(1957) 자동 프로그래밍용 새로운 언어 도입: Univac 플로우-매틱스
  • Remington Rand Univac, Sperry Rand Corporation 부문(1957년).FLOW-MATIC 프로그래밍 시스템FLOW-MATIC_Programming_System_1958.pdf