ALGOL - 프로그래밍언어

2008. 9. 19. 02:12Study/Programming


ALGOL

알골(ALGOL)은 1950년대 미국에서 만들어진 포트란에 대항하여 유럽을 중심으로 개발된 프로그래밍 언어이다. AALGOrithmic Language를 줄여 붙여진 이름으로 알고리즘의 연구개발에 이용하기 위한 목적으로 만들어졌다. 실은 ALGOL은 여러 ALGOL계 언어의 총칭으로 ALGOL이란 이름의 프로그래밍 언어는 존재하지 않는다. 알골은 1958년 취리히에서 열린 국제회의에서 제안된 것이 그 기원으로 여겨진다. 이 언어는 이후에 ALGOL58로 불리게 되었지만 최초의 이름은 IAL이었다. 1960년에 제안된 ALGOL 60은 그 문법이 BNF표기법으로 기술되었으며 구조화된 프로그래밍의 형태를 갖고 있었다. 1986년에는 ALGOL 68이 개발되었다. ALGOL 68에서는 2단계 문법 Wijngaarden 표기법으로 문법이 기술되었다. ALGOL 60의 후계 언어가 제정되기까지 파스칼을 설계한 Wirth의 ALGOL W를 비롯한 여러 후보자가 있었지만, 결국은 ALGOL 68이 후계로 지정되었다. 그러나 너무 복잡하고 방대한 사양을 요구했기 때문에 ALGOL 68 컴파일러는 실제 구현이 어려웠고, Wijngaarden표기법 또한 난해하여 실용적으로 보급되지 못했다.

ALGOL 60은 절차형 언어로는 최초로 재귀호출이 가능한 프로그래밍 언어였다. 또한 PL/1, 파스칼, C 언어 등 잉후 언어의 발전에 큰 영향을 주었다. 그러나 현재는 거의 이용되지 않고 있다. 인자 전달에 있어서 알골에 특징적이었던 "이름전달" 방식도 이후의 언어에서는 거의 찾아볼 수 없게 되었다. 표준으로 IFIP TC/WG2.1에서 ALGOL 60이 제정되었으나 이후에 이어지는 표준화 작업은 진행되지 않고 1984년에야 ALGOL 60에 상당하는 것이 ISO 표준으로 지정되었다.



알골 소스코드의 예

begin integer a;

procedure P(b);

begin b := b+1 ; print(b, a) end

a:=1;

P(a);

print(a);

end