어떤 일을 하는 데에는 하나 이상의 길이 있다

어떤 일을 하는 데에는 하나 이상의 길이 있다(There's more than one way to do it, TMTOWTDI 또는 TIMTOWTDI)는 펄 프로그래밍의 좌우명이다. 이 언어는 프로그래머에게 어떻게 프로그래밍하라고 이야기하지 않으려는 개념에서 설계되었다. 이 철학은 다음과 같은 간결한 문들을 작성하기 쉽게 만들어준다.

print if 1..3 or /match/

더 전통적인 방법은 다음과 같다.
if (1..3 or /match/) { print }

더 장황한 표현은 다음과 같다.
use English;
if ($INPUT_LINE_NUMBER >= 1 and $INPUT_LINE_NUMBER <= 3 or $ARG =~ m/match/) {
    print $ARG;
}

이 좌우명은 펄 커뮤니티에서 매우 자주 논의되어 왔으며, "어떤 일을 하는 데에는 하나 이상의 길이 있지만 가끔은 일관성도 나쁜 것이 아니다"(There’s more than one way to do it, but sometimes consistency is not a bad thing either, TIMTOWTDIBSCINABTE - Tim Toady Bicarbonate)로 확장되기도 했다.

반면 파이썬의 철학은 "어떤 일을 하는 데에는 오직 하나의 길만이 있다"(There should be one-- and preferably only one --obvious way to do it)이다.

같이 보기 
 확장 가능한 프로그래밍
 중복배제
 아마 필요 없을 거야(You aren't gonna need it)

각주

외부 링크 
  Perl, the first postmodern computer language - 래리 월
  There Is More Than One Way To Do It - 위키위키웹

소프트웨어 개발 철학
펄