포트란

포트란(Fortran, 이전 명칭FORTRAN)은 1954년IBM704에서 과학적인 계산을 하기 위해 시작된 컴퓨터 프로그램 언어이다.
FORTRAN은 수식(Formula) 변환기(Translation)의 약자이다.(IBM MathematicalFormulaTranslating System에서 유래.) 포트란은알골과 함께 과학 계산용으로 주로 사용되는 언어이며, 당시 7명의 전문가가 약 2년 반 동안에 걸쳐 완성한 것이 포트란의 기본을 이루었고, 그 후 ANSI와 ISO에서 표준화하였다.
포트란은 산술 기호(+, -, *, / 등)를 그대로 사용할 수 있으며, 삼각함수·지수함수·대수함수 등과 같은 기초적인 수학 함수들을 자연스럽게 불러내어 쓸 수 있으며, 최근 첨단 과학계산에서 필수적인 벡터, 행렬계산기능 등이 내장되어 있는 과학 기술 전문언어이다.
포트란은 기후 및 기상예측, 자원탐사, 우주항공, 유체 및 구조해석, 계산화학, 양자 및 분자 동역학 계산, 천문학, 인공위성을 포함한 군사과학, 자동차 선박 설계, 반도체설계, 금융계산 등 거의 모든 산업분야의 초대형 과학계산 문제의 프로그래밍에 필수적인 언어이다.
위와 같이 특히 자연과학이나 공학에서의 중요한 거대한 계산문제들을 슈퍼컴퓨터들을 이용하여 해결하는 데 있어서 C언어와 같이 범용프로그래밍 언어에 속하는 프로그래밍언어들에 비해 탁월한 효율이 있는 과학계산 전문 언어이다. FORTRAN 66, FORTRAN 77, Fortran 90/95, Fortran 2003, Fortran 2008, Fortran 2018, Fortran 2023 으로 지속적으로 표준이 개정되고 있다.
전문적인 과학계산 문제를 풀기 위하여 프로그래밍하는 데 있어서 범용 프로그래밍 언어에 비해서 간단 명료하고 신속하게 프로그래밍을 작성할 수 있고 디버깅하는 데도 시간을 단축할 수 있으며 그 계산속도 또한 일반적으로 더 빠르다.
FORTRAN77까지 초기의 버전은 그 이름에 대문자를 사용하였으나, 현재는 Fortran으로 첫 문자만을 대문자로 표기한다.
Fortran90부터 현재에까지 ISO, ANSI 모두 포트란에 대한 명칭은 "Fortran"을 사용한다.
다른 컴퓨터 프로그래밍 언어에서도 그렇듯이 ANSI (미국 국가표준 협회) 와 ISO (국제 표준화 기구)의 두 표준이 통용된다.포트란에 대한 ANSI 표준을 담당하는 위원회는 X3J3로 짧게J3로 부른다.포트란에 대한 ISO 국제 표준을 담당하는 실무그룹은 ISO/IEC JTC1/SC22/WG5 로WG5로 부른다.현재 J3는 WG5의 지시 하에 활동하고 있으며, WG5를 구성하는 가장 큰 부분이다.
1953년존 배커스(John Warner Backus) 가 IBM 704메인프레임머신에 사용할 프로그래밍 언어로 어셈블리어에 대한 대안으로 제시하였다. 이후 1956년 첫 번째 포트란 매뉴얼이 발표되었고, 1957년 대중에 첫 포트란 컴파일러가 등장한다. 그 이전의 프로그래머들은 손수 어셈블리어를 이용해야 했다.
IBM은 1958년 FORTRAN II, 1962년 FORTRAN IV를 출시하였다. IBM이 포트란을 내놓자 다른 여러 벤더에서 포트란 컴파일러를 각자의 시스템에 맞게 제작하기 시작하였다. 벤더들 각자의 이름을 가진 컴파일러를 개발하기도 하였지만 다수에서 IBM 포트란 버전과의 문법적 동일성을 강조하며 FORTRAN II, FORTRAN IV를 그 이름으로 컴파일러를 출시하였다. 하지만 각각의 기계 의존적 문법이 존재하였으며, 같은 코드로 여러 머신에서 동일한 동작과 결과를 얻고자 하는 사람들의 요구가 커졌다.
Business Equipment Manufacturers Association(BEMA)은 포트란 표준화에 대한 논의를 시작하며, ANSI(당시는 ASA)에 표준 문법을 제출한다. IBM이 가장 영향력이 높았으므로 표준화는 IBM FORTRAN IV 컴파일러를 바탕으로 진행되었다. 1966년 ANSI의 승인을 얻게 되며, 첫 미국 포트란 표준이 발표된다. 대중에게 FORTRAN IV와 FORTRAN 66은 혼용되어 불리게 된다. 표준이라는 용어는 아직 생소하여 대중은 본인들이 사용하는 컴파일러의 이름인 FORTRAN IV를 사실상 표준과 같은 의미로 사용하였다.  이 표준은 산업 표준으로 널리 받아들여지게 된다.
이후 ISO(국제 표준화 기구)에서는 1972년 이 ANSI FORTRAN 66을 그대로 받아들여 포트란 국제 표준으로 받아들인다. ISO R1539-1972
ANSI FORTRAN 66 표준은 다음과 같은 문법을 포함하고 있다.
FORTRAN 66 표준이 발표된 이후에도 각 컴파일러 벤더들은 표준에 포함되지 않는 각자의 부가적 확장 문법을 포함하는 포트란 컴파일러들을 출시하였으며, 이에 미 포트란 표준화 위원회(ANSI committee X3J3- J3)가 1969년 결성되었다. J3는 FORTRAN 66 표준에 대한 개정을 논의하기 시작했다.
최종 안이 1977년에 확정되었으며 1978년 4월 ANSI의 승인을 얻게 된다. 이 ANSI 표준은 FORTRAN 77 이란 이름으로 불리고 그 공식 문서는 ANSI X3.9-1978이다.
ISO는 이 ANSI FORTRAN 77을 수용하여 포트란 국제 표준으로 받아들인다. 공식 문서는 ISO 1539:1980이다.
FORTRAN 66에 비해서 FORTRAN 77표준은 다음과 같은 몇 가지 특징적인 기능을 포함하게 된다.
한편 ANSI FORTRAN 77에 몇 가지 문법이 추가된 미국 국방부(Department of Defence: DoD) 포트란 표준이 발표된다. 1980년대 이후에 전 미국에서 발표된 포트란 77 컴파일러 제품들은 대부분 ANSI 표준 뿐만 아니라 이 국방부 표준을 지원하도록 설계되었다.  MIL-STD-1753 in 1978.
다음과 같은 사항이 ANSI FORTRAN 77에 비해 추가되었다.
위 사항 중에서 INCLUDE 문법을 제외한 기능들이 이후 Fortran 90 포트란 표준에 추가된다.
컴퓨터 환경은무어의 법칙이 지배하게 되면서 빠르게 변화되어가는 도중에 FORTRAN 77 표준에 대한 개정은 지지부진하게 되었다. 차기 버전이 나오기에 15년의 시간이 걸렸으며, 이 길었던 기간 동안 FORTRAN 77 표준은 포트란의 역사에서도 가장 중요한 표준이 되어 버렸다.
Fortran 90은 1991년에 ISO에서 먼저 승인을 얻었으며, ISO/IEC 1539:1991(E) 가 ISO Fortran90 이 된다. 이전 FORTRAN XX 표준의 의미가 ANSI를 칭하였던 것에 비해서 Fortran XX 형태의 표기는 ISO 국제 표준을 의미하는 것으로 여겨지게 되었다. ANSI의 승인은 1992년에 이루어진다.포트란의 현대화가 진행된 표준이며,Ada와 같은 여러 다른 언어에서 많은 아이디어를 가져왔다.
공식적인 표기가 FORTRAN에서 Fortran으로 바뀐 것을 포함하여, 다음과 같은 사항을 표준에 추가하였다.
Fortran 90 은 FORTRAN 77의 기존의 문법 중 몇 가지 사항을 Obsolescent로 분류하였다. 그에 비해 Deleted 항목은 0으로 FORTRAN 77문법 중 삭제가 일어난 것이 없게 된다. 즉, 모든 FORTRAN 77 표준 코드가 Fortran 90 표준에 부합하도록 정의되었다.
Obsolescent features
포트란 표준 위원회는 10년단위의 major update 와 5년 단기의 minor update를 계획하는데, Fortran 95는 Fortran 90에 대한 minor update로 계획된다. 공식 문서는 ISO/IEC 1539-1:1997이다.이는 Fortran 90에 대한 확장 기능을 제공하던 High Performance Fortran(HPFF) 프로젝트의 영향을 받아 병렬 프로그래밍에 대한 지원을 목적으로 한다.
다음의 추가적 기능을 특징으로 한다.
Fortran 95에서는 Fortran 90에서 Obsolescent로 분류되었던 항목 중에서 몇몇 문법이 Deleted 항목으로 변화되었다. 즉, 과거 표준과의 일부 단절이 일어났다.
Deleted
Obsolescent
원래는 90에 대한 10년 단위 major update로 Fortran 2000이 계획되었으나, 합의가 늦어지고 Fortran 2003으로 발표된다.
Fortran 2003은 ISO/IEC 1539-1:2004가 공식 문서이다.
Fortran 2008은 2010년에 발표된 표준으로 ISO/IEC 1539-1:2010이 공식 문서이다. Fortran 2003에 대한 minor revision으로 다음과 같은 기능의 추가를 특징으로 한다.
Fortran 2018은 2018년에 발표된 표준으로 ISO/IEC 1539-1:2018이 공식 문서이다. Fortran 2008에 대한 minor revision에 해당한다.
Fortran 2023은 가장 최근의 포트란 국제 표준이며 2023년 11월 17일 발표되었다. ISO/IEC 1539-1:2023이 공식 문서이다.
다음은 데이터 카드(천공 카드나천공 테이프)에서 삼각형의 세 변의 길이를 읽은 후,헤론의 공식으로 넓이를 구하여 출력하는 예이다.
다음은 대화형으로 사용자의 숫자 입력을 받아서 평균을 출력하는 프로그램이다.