[첫화면으로]Diary/Perl문서를보다가

마지막으로 [b]

/Perl문서를보다가

이 홈페이지는 UseModWiki로 구성되어 있고, 이 유즈모드위키는 Perl 언어로 짜여진 프로그램이고, 이걸 고치는 UseModWiki소스수정 작업을 하려니 아무래도 펄을 공부하게 되지요. 게다가 좀 익혀보니 연구실에서도 간단한 실험 데이타 텍트스를 정리할 때는 C 등으로 짜는 것보다 훨씬 간편하게 할 수 있어서 좋아하는데...

펄이 설치된 시스템에는 보통 perldoc 이라는 문서 패키지도 설치되어 있어서, 주요 토픽이나 펄 함수에 대한 매뉴얼을 볼 수 있게 되어 있습니다. 예를 들어 펄에서의 정규표현식에 대해 알고 싶으면 제 경우는 서버에 접속해서
perldoc perlretut
를 하면1 아래와 같은 화면이 나오는 게죠.
PERLRETUT(1)          User Contributed Perl Documentation         PERLRETUT(1)

NAME
       perlretut - Perl regular expressions tutorial

DESCRIPTION
       This page provides a basic tutorial on understanding, creating and
       using regular expressions in Perl.  It serves as a complement to the
       reference page on regular expressions perlre.  Regular expressions are
       an integral part of the "m//", "s///", "qr//" and "split" operators and
       so this tutorial also overlaps with "Regexp Quote-Like Operators" in
       perlop and "split" in perlfunc.

       (이하 생략)

이번 주말에는 펄의 "reference"라는 개념에 대해 좀 제대로 알아두고 싶어서, 뒤져봤습니다. "perlref"라는 토픽에서 다루고 있더군요. "perldoc perlref"라고 하니 주루룩 나오는데 아무래도 영어라서 많이좀 싫습니다. =.=;; 구글링해보니 어느 고마운 분이 [번역된 문서]가 있어서 읽었습니다만, 전체를 번역한 게 아닌 듯 중간중간 빠진 내용이 있고 아무래도 직역된 문구를 보면 애매한 점도 있어서 다시 영문으로 천천히 읽어보자 했지요.

그런데 원문 제일 서두에 다음과 같은 note가 적혀 있더라고요.
... For a shorter, tutorial introduction to just the essential features, see perlreftut. ....

"오호, perlreftut 라는 토픽이 따로 있었네, 뒤에 붙은 tut는 tutorial이겠구먼" 하면서 그걸 먼저 읽기로 했습니다. 그래서 오전에 읽기 시작했지요.

여기서 잠깐, 그 "reference"가 뭔지 초간단 설명하자면, 어떤 데이타를 가리키는 겁니다2. 사람의 이름과 비슷해서, 이 홈페이지에 적혀 있는 Raymundo라는 이름이 대한민국 서울 모처에 있는 저를 가리키는 것을 연상하면 됩니다. 제가 읽은 문서에서도 사람의 이름을 예로 들어서 설명을 하고 있는데... 글쎄 그 내용이...

(빨간 색은 제가 입힌 겁니다)
A reference is a scalar value that refers to an entire array or an
entire hash (or to just about anything else). Names are one kind of
reference that you're already familiar with. Think of the President of
the United States: a messy, inconvenient bag of blood and bones.
But
to talk about him, or to represent him in a computer program, all you
need is the easy, convenient scalar string "George Bush".

참조(reference)는 어떤 배열 전체 또는 해쉬 전체 (또는 뭐가 됐든)를 가리키는
스칼라3 값이다. 여러분에게도 익숙한 '이름'이라는 것도 참조의 한 형태로 볼 수 있다.
미국의 대통령을 생각해보자: a messy, inconvenient bag of blood and bones 말이다.
여러분이 그에 대해 말을 하거나, 컴퓨터 프로그램 내에서 그를 나타내기 위해서는
"George Bush"라는 쉽고 편리한 스칼라 문자열만 있으면 된다.

a messy, inconvenient bag of blood and bones...

a messy, inconvenient bag of blood and bones...

a messy, inconvenient bag of blood and bones...

지저분하고, 불편한, 피와 뼈를 담고 있는 가방??? -_-;;;




"bag of blood and bones"는 사람이나 동물을 비하해서 쓴 표현 같고, 사전에서 EngDic:messyEngDic:inconvenient를 찾아서 제일 그럴싸한 걸 조합하면...

"성 가 시 고    폐 만 끼 치 는    고 깃 덩 어 리"쯤 되는 건가.........;;;;;;;;;

안 믿기시면, 공식 펄 아카이브 사이트인 CPAN에서 확인하세요. [perlreftut 문서]

이 글 쓰는 동안 다시 생각해보니, "messy, inconvenient"는 "너저분하고 불편하게 배열 등의 리스트를 나열할 필요 없이 간편하게 참조 변수 하나로 표시할 수 있다"라는 댓구를 위해 쓰였다고 봐 줄 수도 있긴 하겠습니다만... 아무리 그래도...

이래도 괜찮은 거야? =.=???
-- Raymundo 2007-2-25 12:54 pm

여담으로...
  • "이래도 괜찮은 거야?" 정도의 대사가 들어 있는 짤방용 이미지 찾습니다.
  • 인터위키를 사용해서 네이버 사전에 연결할 때 쓸만한 아이콘 찾습니다. 16x16 사이즈로, 저작권 문제 없이 쓸 수 있으면 좋겠습니다. (직접 만들어주시면야 제일 좋고) 꼭 네이버가 아니라도 상관은 없겠고요. (인터맵에 자기가 지정하기 나름이니) 영어, 국어, 일본어, 백과 사전 용으로 4개 정도 있으면 좋을 듯 한데요.
-- Raymundo 2007-2-25 12:54 pm

Comments & Trackbacks

펄 매니아에서 글보고 잠시 들어오게 되었습니다~ X-window도 사용하신다면 podbrowser 를 설치하시면 더욱 편하게 perldoc 문서를 보실 수 있답니다. :-)
-- keedi 2007-2-27 3:42 pm

keedi/ 안녕하세요~ 요즘은 X윈도우는 거의 쓰지 않지만, 나중에라도 꼭 써 보겠습니다 ^_^
-- Raymundo 2007-2-27 9:01 pm

alogblog.com에서 openpgp서명을 보고 왔다가, 부시 관련해서는 정말 재밌어서 코멘트남깁니다. 아 덕분에 미친놈처럼 한 참 웃었습니다. ^^;
-- 부깽 2007-3-7 8:46 am

부깽/ 반갑습니다, 전 첨에 봤을 때는 하도 놀래서 웃을 생각도 안 들더라고요. 해킹 당해서 내용이 조작됐나 싶었어요 ^^;;
-- Raymundo 2007-3-7 8:53 am
이름:  
Homepage:
내용:
 

<<   /컴퓨터가뭐에홀렸나 (2007-03-06)[p]   | /Perl문서를보다가 (2007-02-25) |   /강등당하다 (2007-02-22)[n]   >>

Diary

최근 글들

코멘트와 트랙백

옛 글들

  • /Archive - 월별로 한번에 보기
  • /List - 전체 포스트 목록

RSS

주요 페이지

이 홈페이지의 인터위키는 다음과 같습니다.
GyparkWiki  UTF-8
http://gypark.pe.kr/wiki/


주인장분류

각주:
1. perlretut라는 토픽 이름은 PERL Regular Expression TUTorial의 줄임말이겠죠. 이런 토픽들의 리스트는 "perldoc perl"하면 나옵니다
2. C의 포인터와도 비교될 수 있겠죠. 펄에서는 2차원 배열이나 "해쉬의 배열"과 같은 자료구조를 쓰기 위해서는, 이 레퍼런스를 사용해야 하더군요.
3. 스칼라는 "하나의 값"을 저장한 것이고, 상대되는 개념은 여러 개의 값을 담고 있는 list, 즉 배열이나 해쉬 등

마지막 편집일: 2012-2-11 12:25 am (변경사항 [d])
1916 hits | Permalink | 변경내역 보기 [h] | 페이지 소스 보기