재귀 약자(再歸略字, recursive acronym)는 원래 문장 안에 약자가 그대로 들어 있도록 이름을 지은 것이다. 전산학에서 흔히 사용하는 재귀의 관점에서 보면, 재귀 약자에는 재귀를 끝내는 조건이 없기 때문에 '재귀 약자'라고 부르는 것보다 '순환 약자'(循環略字, circular acronym)라고 부르는 것이 엄밀한 의미에서는 더 정확하다. 반면에 일반적인 순환의 의미에 비추어 생각하면, 주기적이지 않다는 점에서 순환 약자보다는 재귀 약자라는 표현이 더 정확하다.

컴퓨터 관련 예 편집

전산학에 종사하는 많은 사람들은 재귀적 약자를 이용하는 것을 해커다운 전통으로 여겨왔다. 재귀적 약자가 사용된 가장 오래된 예는 1977년 ~ 1978년에 만들어진 MagicSix용 편집기 TINT("TINT Is Not TECO")이다. 이후 MIT 리스프 머신용 편집기 EINE ("EINE Is Not Emacs") 및 ZWEI ("ZWEI Was EINE Initially")도 이런 방식으로 이름을 지으면서 이런 유행이 널리 퍼졌다. (eine과 zwei는 독일어로 '1'과 '2'를 뜻한다.)

대표적인 예는 다음과 같다.

GNU와 HURD 참고사항 편집

  • gnu() = (암소와 비슷하게 생긴 양)
  • GNU(그누) = GNU is Not Unix (FSF리처드 스톨만이 Unix의 자유소프트웨어 버전을 만들면서 이름지음)
  • herd - 동물의 무리 , HURD와 같은 발음
  • 결과적으로 GNU/HURD (누의 무리) 라는 재미있는 이름이 나왔다.
  • Unix의 커널을 제외한 유틸리티들이 FSF의 GNU프로젝트에서 거의 다 만들어졌고 커널인 HURD의 개발이 진행 중이었다. 마침 Linux 커널이 세상에 널리 퍼졌고, GNU 운영체제의 커널로 Linux를 포팅하여 사용 중이었으므로 리처드 스톨만FSF의 자유소프트웨어 운영체제 이름을 Linux가 아닌 GNU/Linux(그누 슬래쉬 리눅스)라고 불리기를 원한다. (운영체제는 커널 이외에 수많은 유틸리티들이 어우러져 동작하기 때문에)
  • GNU/HURD: HURD커널을 사용한 GNU운영체제
  • GNU/Linux: Linux커널을 사용한 GNU운영체제