
프로그래밍 언어 중, esolang이라는 명칭으로 알려진 언어는 난해한 프로그램 언어를 의미한다. esolang은 본격적인 프로그래밍을 목적이 아닌 개념의 증명 혹은 그저 농담을 위해 개발된 사례가 많다.
'셰익스피어'라는 이름을 이야기하면, 대부분 영국 극작가 윌리엄 셰익스피어를 떠올릴 것이다. 프로그래밍 언어를 이야기하던 중, 갑자기 셰익스피어 이야기를 꺼낸 이유가 무엇인지 의아하게 생각할 수도 있다. 이 기사에서 말할 셰익스피어는 영국의 극작가가 아닌 난해한 프로그래밍 언어의 일종인 셰익스피어 프로그래밍 언어(SPL)이기 때문이다.
SPL은 소스 코드가 마치 윌리엄 셰익스피어의 연극처럼 보이도록 제작된 프로그래밍 언어이다. 1990년도 초에 등장해, 현재 컴파일러까지 개발된 상태이다. SPL은 언뜻 보아도 파이썬, 자바, C언어 등 우리가 주로 학습하고 활용하는 프로그래밍 언어와 구문이 상당히 다르다. 따라서 많은 사용자가 프로그래밍 언어임을 쉽게 알아차리지 못한다.

위의 이미지가 SPL의 예시이다. 얼핏 보았을 때, 로미오와 줄리엣의 대사 일부분처럼 보인다. 그러나 실제 우리가 알고 있는 로미오와 줄리엣의 내용과는 무관하다.
프로그램의 첫 부분에서 로미오나 줄리엣 같은 스택을 등장인물로 선언하고, 등장인물이 서로 대화를 나누며 다른 인물의 값을 조작하거나 push, pop 같은 연산을 수행한다. 하지만, 프로그래밍 언어로 쓰인 글이기 때문에 문자를 그대로 읽으면 말이 되지 않는다.
혹시, SPL을 더 활용하고 싶은가? 그렇다면, 프로젝트 파일 소스 공유 홈페이지에서 다운로드받아 사용할 수 있다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]