rein's world

프로그래밍 언어가 종교라면

과 게시판에 있던 링크를 납치. (게시판 자체가 로그인 기반/비공개라서 링크는 따로 안함)

프로그래밍 언어가 종교라면

간단히 요약 + 감상. 현재 널리 쓰이는 프로그래밍 언어들을 역시 널리 알려진 지구 상의 각 종교들에 비유했다. rein 본인은 종교를 갖지 않는 사람이라 종교적인 편향이 없음을 미리 말해둔다 :p 

  • C는 유대교 – 누구나 그 법칙을 알고 널리 퍼져있음. 사실 C에 기반하지 않은 무언가가 있는지
  • Java는 기독교 원리주의 – 이건 말 안해도 잘 알듯. C와 같지만 엄격한 법칙들로 재창조..
  • PHP는 개별주의 기독교1 – C, Java 등의 언어에서 필요한 부분만 취사선택했음
  • C++은 이슬람 – C를 따라하고, 수많은 매우 복잡한 규칙을 추가하고 수많은 다툼과 광신도를 가지고 있다
  • C#은 모르몬교 – Java같은 기독교 원리주의로 보이지만, 들여다보면 그렇지 않음…)
  • lisp 은 선불교 – 어떤 정형화된 도그마(교리)가 없으며, 언어이기도 그렇지 않기도(!) 하다.
  • haskell 은 도교 – 다른 언어들과 너무나도 다르며 + 그 자체로 유용한게 있는지 의심받기도 함
  • erlang 은 힌두교 – 다른 언어들과 다르고 + 동시에 존재하는 신격들(사실 이건 concurrent 프로그래밍에 대한 erlang의 속성을 의미함)이 존재함) 
  • perl은 부두교 – 알 수 없는(정말 그렇다!) 수 많은 구문들.
  • lua는 Wicca – 매우 자유스러운 범신교. lua는 자유스러우면서도 정말 여러곳에 쓰인다.2
  • ruby 는 신 이교주의(neo-paganism) – 여러 개념들을 섞어서 하나의 언어가 되었으며, 빠르게 이것저것 추가하고 있다
  • COBOL은 (구) 이교주의(ancient-paganism) – 예전에는 광대한 영역에서 쓰였으며, 현재는 거의 멸종(다만 금융권 일부에선 아직 쓰인다)
  • python은 인문주의(humanism) – 상식에 입각하며!, 쉽고!, 제한이 적다!. 정말로 현 세대에서 인간을 위한 언어는 파이썬이라고 생각함.
  • APL은 싸이언톨로지 – …이건 더 설명이 필요없을듯. 
  • Visual basic 은 악마숭배 – 악마에게 혼을 팔지 않는한 (이하생략)

프로그래밍 언어의 선택 / 지지(?)에는 상당히 종교적인 면이 있다. 사실 나만 해도 C++/python 을 다른 언어들보다 훨씬 편애하는데다가 -_-;; (그런 면에서 어정쩡한 영역에선 Java/C#을 쓰는게 아니라  C++위에 python을 올린다)

원문을 쓴 글쓴이의 예리한(?) 비유가 참 맘에 든다. 그런 의미에서 원문도 한 번 읽어두자.

  • 댓글들을 다시 보는데 재밌는게 더 있다.

    • smalltalk는 이집트 원시 종교(…)
    • 기계어는 애니미즘
    • prolog 는 무신론(atheism)…이라고 하는데 이건 비유가 살짝 엇나간듯도하다
    • SML / OcaML은 카발라 (유대교 계통의 신비주의) … 뭔가 이 비유도 살짝 어긋났단 느낌이지만 재밌다

다른 분들은 뭔가 재밌는 비유가 없을까요 :)


  1. 어떤 종교적 교리를 따를지 취사선택해서 만들어낸 개별 교회들. ↩︎

  2. 게임 쪽에서도 여러가지 서버/클라이언트나 매일 쓰는 툴들에 lua가 많이 쓰인다. ↩︎