자료의 입력과 출력은 어떤 자료형보다도 먼저 배우는 개념이다. 그 이유는 알고리즘의 성질에서 찾을 수 있다. 알고리즘은 0개 이상의 입력, 1개 이상의 출력이 존재해야 한다는 조건 때문이다.
컴퓨터에 아무리 복잡한 연산을 명령해도 결괏값을 출력하지 않으면, 우리는 컴퓨터 내에서 무슨 일이 일어나고 있는지 모른다.
출력은 코딩 내에서도 중요한 개념 중의 하나이다. 따라서 처음 코딩을 배울 때 출력의 개념에 대해 제대로 공부하지 않고 넘어간다면, 다중 반복문과 같이 출력문이 여러 개 등장할 때 헤매기에 십상이다.
자, 이제 출력문에 관해 공부하기 위해 아무 문제집이나 펼쳐보자. 공부할 만한 서적이 없다면 기초적인 출력문에 관해 쓰인 아무 블로그 글이라도 들어가 보자. 출력문에 관한 설명 사이로 익숙한 문구가 보일 것이다. 바로 "Hello world" 문구이다. 코딩 입문자라면 한 번쯤은 들어보고, 또 출력해 보았을 것이다.
여기서 의문을 가질 필요가 있다. 출력문의 시작 문구는 왜 대부분 "Hello world"로 시작할까? Hello world 안에 코딩과 관련된 심오한 의미라도 담겨있는 것일까?
Hello world의 시초는 1978년 브라이언 W. 커니그한(Brian W. Kernighan)과 데니스 M. 리치(Dennis M. Ritchie)가 쓴 'C 프로그래밍 언어(The C Programming Language)'라는 주장이 지배적이다. 이 외에도 Hello world가 더 먼저 사용되었다고 주장하는 의견도 많다.
Hello world의 정확한 시초가 무엇인지 정확히 알기는 어렵지만, 그 문구를 사용한 이유에 대한 추측은 다음과 같다. 프로그래밍 언어마다 개발 환경이 모두 다르므로 다양한 프로그래밍 언어 사이에서 시험용으로 출력해 볼 문구가 필요했을 것이다.
이때, 컴퓨터가 보편화되어 있지도 않은 시절에 발견한 코딩이란 새로운 문물과도 같았을 것이다. 따라서 코딩의 세계에 입문한 것을 환영한다는 의미에서 Hello World를 사용한 것이 아니냐는 추측이다. 비록 현재는 큰 뜻 없이 대중적으로 사용되는 문구로 전해 내려왔지만, 지금의 프로그래밍 시대를 열어준 고마운 존재임을 잊지 말자.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]