온고창신 溫故創新 ongochangsin

역사에 남을 위대한 여성

미국해군의 계산과학자 그레이스 호퍼(2/5)

간천(澗泉) naganchun 2023. 8. 1. 03:17

미국해군의 계산과학자 그레이스 호퍼(2/5)

 

 

경력과 업적

 

1943년 해군예비역으로 입대해서 1944년 중위가 되고 동년 하버드대학에 근무했다. 하와드 에이켄(Howard Hathaway Aiken, 1900-1973, 미국 물리학자지도하에 컴퓨터의 하버드 마크 1(Harvard Mark I=IBMASCC라고도 부르며 미국 최초의 전기기계식계산기이다)용 프로그램 개발에 참여했다.

전쟁 후에도 이어서 하버드에서 <마크> <마크 >(마크은 프로그램내장 방식계산기이다)의 개발에 참가했는데 이 기간에 후에 유명해진 버그( bug=영어로 <벌레>란 말이다. 컴퓨터프로그램의 오류나 결함을 말한다)와 관련하는 일화가 생긴다.

한때 마크리레에 개미가 끼어서 기계가 작동하지 못하게 되었다. 이 개미는 작업일지에 붙여져서 <실제로 바크나발견된 최초의 예>(원문은 "First actual case of bug being found")라고 호퍼는 일지에 적었다.(현재 이 일지는 스미소니안 박물관(Smithsonian Museum)의 내셔널 뮤지엄 오프 아메리칸 히스토리(The National Museum of American History에 수장되어 있다.

 

호퍼는 후에도 이 일에 대해 좋아해서 말했기 때문에 프로그램이 부적합함을 의미하는 말로서 <버그>라는 용어가 퍼지게 되었다고 한다.(<버그>라는 말은 원래는 전기관계의 부적합함을 의미하는 말로 쓰였던 것이다. 그 어원은 OED( Oxford English Dictionary )에 따르면 세기단위로 컴퓨터보다 오래다. 컴퓨터 관계의 부적합에 대하여 사용하게 된 이유로서 초기의 컴퓨터가 곤충을 원인으로 하는 접촉 불량, 단락(短絡), 절영재가 먹혔다는 등 고장이나 오작동한 때문이라는 설이 말해지는 경우가 있는데 앞에서 말한바와 같이 <실물의 버그(bug)가 발견된 최초의 예>라는 표현이 기록되어 있다는 사실(史實)에서는 그런 설은 의심스러운 것이라고 생각된다.)

 

UNIVAC과 호퍼(1960년)

 

* 유니박(UNIVAC, UNIVersal Automatic Computer)EMCC(EckertMauchly Computer Corporation)의 제품을 기점으로, 전자 디지털로 저장되는 프로그램 컴퓨터 ).

1946년 하버드대학 계산연구소의 패로가 된다. 마크, 마크의 개발에 참여한 후 1919년에는 에카트-머크리사(Eckert-Mauchly Computer Corporation)EMCC의 연구스텝이 되어서 컴퓨터 <NIVAC> 개발에 참여하였다. 1950년에는 에카트 머크리사가 레민턴 란드사(Remington Rand)에 매수당하여 이에 따라서 UNIVAC의 개발도 레민턴 란드사에 인계되었다. 호퍼는 UNIVAC 개발팀의 자동 프로그래밍 개발부장이 되어 1951년에는 세계 처음으로 컴파일러형언어 A-0 System을 개발하였다.

그래서 세계 처음으로 영어를 사용한 컴파일러언어(=compiler language 컴파일러형 언어란 인간이 적은 프로그램을 컴퓨터가 이해할 수 있는 형식으로 변환하는 프로그램언어를 말한다.)FLOW-MATIC를 개발한다.

이것은 <기계어가 아니고 영어에 가까운 언어에 의하여 프로그램할 수 있도록 되어야한다.>는 호퍼의 이념에 기초하는 것이었다.

 

컴퓨터언어 <COBOL>의 개발

 

1959년에는 국방총성의 제안에 따라 FLOW-MATIC를 발전시킨 <COBOL>을 개발하여 존 바카스(John Warner Backus, 1924-2007=미국 수학자. 초기 고수준 프로그래밍언어(FORTRAN)의 발명자)와 함께 고수준언어의 갈림이 되었다.