在計算機領域,黑客們常常不墨守成規,事事都講究別出心裁,即使是一個簡單的命名,都想玩出花活。
其中有一個較早的傳統,就是使用幽默地引用自身或其他縮寫的縮寫。最早的實例可能是在1977年或1978年間出現的TINT("TINT Is Not TECO",TINT不是文字編輯器和修正器),它是一個MagicSix的編輯器。這又啟發了麻省理工大學的兩個Lisp機器編輯器的命名,一個叫做EINE("EINE Is Not Emacs",EINE不是Emacs),另一個是ZWEI("ZWEI Was EINE Initially",ZWEI一開始是EINE)。後來又有了Richard Stallman的GNU(GNU's Not UNIX,GNU不是UNIX)。
許多遞歸縮寫包括否定語,通常用來指出這個縮寫指代的事物a不是與另一個事物b相類似(但事實上,這個事物a通常與b非常相似甚至是b的派生品)。
在這方面著名的遞歸縮寫包括:
- Allegro—Allegro Low LEvel Game ROutines(注意:這個縮寫原先叫Atari Low LEvel Game ROutines直到開發脫離了Atari ST)
- Bing—Bing is not google
- CAVE—Cave Automatic Virtual Environment
- Cygnus—Cygnus, Your GNU Support
- giFT—giFT: Internet File Transfer
- GiNaC—GiNaC is Not a CAS
- GNE—GNE's Not an Encyclopedia
- GNU—GNU's Not Unix
- HIME—HIME Input Method Editor[2]
- JACK—JACK Audio Connection Kit
- JOE—Joe's Own Editor
- KAGE—KAGE: Alternative Game Engine
- KINACS—KINACS is not a circuit simulator
- LAME—LAME Ain't an MP3 Encoder[3]
- LiVES—LiVES is a Video Editing System
- MiNT—MiNT is Not TOS(後來變成"MiNT is Now TOS")
- MINT—MINT Is Not TRAC
- Mung—Mung Until No Good[4]
- Nagios—Nagios Ain't Gonna Insist On Sainthood
- NiL—NiL Isn't Liero
- NINJA - Ninja Is Not Just Air[5]
- PHP—PHP: Hypertext Preprocessor (原先是"Personal Home Page" tools,在PHP 3發佈後改變)[6]
- PINE—PINE Is Nearly Elm,這是原先的;現在PINE的官方解釋是"Pine Internet News and E-mail"[7]
- PIPS—PIPS Is POSIX on Symbian OS
- PNG—PNG's Not GIF
- RPM—RPM Package Manager(原來叫"Red Hat Package Manager")
- Scaled—Scaled Composites: Advanced Link to Efficient Development
- SPARQL—SPARQL Protocol And RDF Query Language
- TiLP—TiLP is a Linking Program
- TIP—TIP isn't Pico(原名叫Nano text editor)
- UIRA—UIRA Isn't a Recursive Acronym
- WAM - WAM Account Manager
- Wine—Wine Is Not an Emulator[8]
- XINU—Xinu Is Not Unix
- XNA—XNA's Not Acronymed
- YAML—YAML Ain't Markup Language(最初叫"Yet Another Markup Language")
- Zinf—Zinf Is Not FreeA*p
- ZINC—ZINC Is Not CMS
互相遞歸或者其他特殊遞歸方式
- GNU Hurd計劃的名稱使用了一種互相遞歸的特殊方式:"Hurd"代表"Hird of Unix-Replacing Daemons",而"Hird"意義是"Hurd of Interfaces Representing Depth."
- GNUBrain計劃是另一個互相遞歸的實例。"Brain"代表"Brian relates any independent node"而"Brian"代表"Brain implements a network".
- RPM和PHP原來是常規的首字母縮寫但後來重新定義成遞歸縮寫。
- 大多遞歸縮寫都在第一個字母上遞歸,但YOPY, "Your own personal YOPY"是在最後一個字母上遞歸 (因此最後一個字母等於第一個字母).
看完是不是覺得很有意思呀,關注一波再走吧。