5 ], GNU GPL [ 6 ] 사용 중인 파일 확장자. pl. pm. t. pod웹사이트 / 펄 ( Perl ) 은 래리 월이 만든 인터프리터 방식의 프로그래밍 언어 혹은 그 인터프리터 소프트웨어를 가리킨다. 펄은 고급 언어, 범용 언어, 인터프리터 언어, 동적 언어 범주에 속한다. 이 계열의 언어에는 펄 5와 펄 6가 있다. [ 7 ] 래리 월이 1987년 펄을 처음 만든 후, 펄은 많은 변화를 겪었다. 펄 6은 2000년부터 펄을 다시 설계하면서 개발되기 시작했고, 펄 5와는 독립적으로 개발되었고 서로 영향을 미쳤다. 펄 언어는 실용성을 모토로 하고 있어 C나 sed, AWK, 셸 스크립트 ( sh ) 등 다른 프로그래밍 언어에서 뛰어난 기능을 많이 도입하여 사용하고 있다. [ 8 ] 동시대의 유닉스 명령 도구들이 지닌 불특정한 데이터 길이의 제약 없이 강력한 문자열 처리 기능을 제공하며 [ 9 ] 이를 통해 텍스트 파일의 조작을 용이하게 만들어 준다. 펄 5는 부분적인 이유로는 타의 추종을 불허하는 [ 10 ] [ 11 ] [ 12 ] 정규 표현식, 문자열 구문 분석 기능 덕분에 1990년대 말 들어 인기를 끌기 시작했다. [ 13 ] CGI뿐 아니라 펄 5는 그래픽스
펄 - 위키백과, 우리 모두의 백과사전 펄 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 다른 뜻에 대해서는 펄 ( 동음이의 ) 문서를 참조하십시오. 펄Perl패러다임 다중 패러다임설계자 래리 월최근 버전 5. 30. 0 [ 1 ] / 2019년 5월 22일 ( 37일 전 ) ( 2019 - 05 - 22 ) 5. 28. 2 [ 2 ] / 2019년 4월 19일 ( 2달 전 ) ( 2019 - 04 - 19 ) 미리보기 버전 5. 31. 1 [ 3 ] 미리보기 버전 출시일 2019년 6월 20일 ( 8일 전 ) ( 2019 - 06 - 20 ) 자료형 체계 동적 타이핑 영향을 받은 언어 AWK, 스몰토크 80, 리스프, C, C, sed, 유닉스 셸, 파스칼영향을 준 언어 파이썬, PHP, 루비, ECMAScript / 자바스크립트, LPC, 윈도 파워셸, 팰컨, 펄 6, 코어 ( Qore ), 줄리아운영 체제 크로스 플랫폼라이선스 아티스틱 라이선스 1. 0 [ 4 ] [ 5 ], GNU GPL [ 6 ] 사용 중인 파일 확장자. pl. pm. t. pod웹사이트 / 펄 ( Perl ) 은 래리 월이 만든 인터프리터 방식의 프로그래밍 언어 혹은 그 인터프리
슬래시닷 효과에서처럼, 볼륨이 큰 시스템들이 부하가 급증하는 현상을 예방할 수 있다. 현대의 펄 응용 프로그램들에서, 특히 카탈리스트와 같은 웹 프레임워크를 이용하여 작성된 프로그램의 경우, DBI 모듈은 종종 SQL 쿼리를 만들어서 응용 프로그램 제작자에게 투명하게 데이터를 관리하게 하는 DBIx : : Class, Class : : DBI Rose : : DB : : Object 등의 객체 관계 매퍼를 통해 간접적으로 사용된다. 펄 6 [ 편집 ] 이 부분의 본문은 펄 6입니다. 카멜리아 ( Camelia ) 는 펄 6 프로젝트의 로고이다. [ 61 ] 2000년에 펄 콘퍼런스에서 존 오원트 ( Jon Orwant ) 는 새로운 주된 언어의 발의를 위한 케이스를 만들었다. [ 62 ] 이를 통해 펄 6이라는 이름의 언어 재설계에 착수하기로 결정되었다. 새로운 언어 기능들에 대한 제안들이 펄 커뮤니티로부터 제기되었는데 그 RFC의 수는 300개 이상이다. 펄 6는 하위 호환성을 고려하지는 않지만 호환성 모드는 존재한다. 공통 계통을 지니면서도 펄 6와 펄 5는 구별된 언어이다. [ 63 ] 펄 5의 미래 [ 편집 ] 펄 5의 개발은 지금도 계속되고 있다. 펄 5. 12. 0은
은 이를 대체하는 상징인 양파 그림을 소유하고 있으며 Perl Mongers, PerlMonks, Perl. org 등의 하위 단체들에 라이선스한다. [ 50 ] 이 상징은 펄 어니언의 시각적 유희이다. [ 51 ] 랩터 상징 [ 편집 ] 대안 펄 5 로고 모졸리셔스의 개발자 Sebastian Riedel는 랩터 ( 육식조 ) 를 그려놓은 로고를 개발하였으며, CC - SA 라이선스 버전 4. 0으로 배포되었다. [ 52 ] 이 로고는 펄 5를 상징으로 두고 있다. 개요 [ 편집 ] 래리 월에 따르면 펄은 두 개의 슬로건이 있다. 첫 번째 슬로건은 " 어떤 일을 하는 데에는 하나 이상의 길이 있다 " ( There's more than one way to do it, TMTOWTDI ) 이며, 두 번째 슬로건은 " 쉬운 일은 쉬워야 하고 어려운 일은 할 수 있어야 한다 " ( Easy things should be easy and hard things should be possible ) 이다. [ 9 ] 특징 [ 편집 ] 펄의 전반적인 구조는 대체적으로 C에서 가져왔다. 펄은 변수, 식, 대입문, 괄호로 구분되는 블록, 제어 구조, 서브루틴을 갖추고 있는 절차적 프로그래밍 언어이다. 펄은 셸
6을 개발할 때 다른 오픈 소스 프로젝트와 비슷하게 버전 작성 스킴으로 전환하기로 결정되었다. 5. 005 - 63 이후로 다음 버전은 5. 5. 640이 되었으며 개발판의 경우 홀수를, 안정판의 경우 짝수를 붙이기로 계획하였다. 2000년에 래리 월은 커뮤니티로부터 새로운 버전의 펄에 대한 제안을 해 줄 것을 요청하였다. 이를 통해 361 RFC 문서들이 생성되었고 이 문서들은 펄 6의 개발을 이끌어가는데 사용되었다. 2001년에는 [ 25 ] 변경 요청 사항들을 요약하고 다음 세대의 펄의 설계를 나타내는 일련의 문서들인 펄 6의 계시록을 위한 작업이 시작되었다. 이 시점에 펄 6는 언어의 설명으로만 존재하였다. 펄 5. 8이 2002년 7월 18일 공개되었고, 그 뒤로 한 해에 거의 한 차례씩 업데이트가 진행되었다. 펄 5. 8은 유니코드 지원을 개선하였고 새로운 입출력과 새로운 스레드를 구현하였으며 수치 정확도를 개선하였고 새로운 모듈을 몇 개 더 추가하였다. [ 26 ] 2013년 기준으로 이 버전은 가장 대중적인 펄 버전으로 남아 있으며 레드햇 5, 수세 10, 솔라리스 10, HP - UX 13. 33, AIX 5에
를 구분하기 때문이다. 서적 《 프로그래밍 펄 》 의 첫 판이 출시되기 전에 이 언어를 perl로 부르는 것이 일반적이었다. 그러나 랜들 L. 슈왈츠는 이 책에서 언어의 이름을 대문자화하여 조판 시에 더 잘 눈에 띄게 하였다. 최종적으로 이러한 대소문자 구별은 정규화된 채로 문서화되었다. [ 44 ] 이 언어의 이름은 " 실용적인 데이터 취득 및 보고서 작성 언어 " ( Practical Extraction and Report Language ) 로 기술되기도 하는데 이는 이미 존재하는 단어에 맞추기 위해 만들어진 약어이다. [ 45 ] 래리 월 자신의 풍자적인 표현으로 " 병적 절충주의 잡동사니 출력장치 " ( Pathologically Eclectic Rubbish Lister ) 와 같은 다른 표현들이 제안되기도 했다. [ 46 ] 실제로 래리 월은 이 이름이 다른 수많은 확장들에 영감을 주기 위해 고안하였다고 주장하였다. [ 47 ] 낙타 상징 [ 편집 ] 본 문서의 이해를 돕기 위한 비자유 그림이 있습니다. 링크의 파일을 직접 올려 주세요 오라일리 미디어가 사용하는 낙타 상징 오라일리 미디어가 출판한 《 프로그래밍 펄 》 은 책 겉표지에 단봉 ( [UNK] [UNK] ) 낙타의 사진을 특징으로 내세우고
하기 위해서였다. [ 41 ] PONIE 프로젝트는 2006년에 끝났으며, 더 이상 개발되고 있지 않고 있다. PONIE의 일부로서 펄 5 인터프리터에 적용된 개선 사항들 중 일부분은 해당 프로젝트에 추가되었다. [ 42 ] 명칭 [ 편집 ] 펄 ( Perl ) 의 원래 이름은 " Pearl " 이다. 래리 월은 긍정적인 의미를 가지는 짧은 이름을 선택하고 싶었고, 서너 글자로 이루어진 낱말을 사전에서 모두 찾아 보았지만 눈에 탁 띄는 것이 없었다고 주장하였다. 그는 아내 글로리아의 이름을 따오는 것도 고려하였다. 래리 월은 공식 출시 이전에 기존에 PEARL이라는 이름의 프로그래밍 언어가 있다는 것을 발견하고 철자를 살짝 바꾸었다. [ 43 ] 이 언어를 가리킬 때 이름은 고유 명사로서 일반적으로 앞 글자가 대문자인 " Perl " 로 표기한다. 인터프리터 프로그램 그 자체를 가리킬 때에는 모두 소문자인 perl로 부르기도 하는데 이는 대부분의 유닉스 계열 운영 체제들이 대소문자를 구분하기 때문이다. 서적 《 프로그래밍 펄 》 의 첫 판이 출시되기 전에 이 언어를 perl로 부르는 것이 일반적이었다. 그러나 랜들 L. 슈왈츠는 이 책에서 언어의 이름
써 사용자가 펄 버전을 업그레이드하더라도 일반적으로 비호환되는 오래된 스크립트를 실행할 수 있게 되었다. [ 31 ] 펄 5. 16은 유니코드 6. 1 업데이트도 포함하고 있다. [ 31 ] 펄 5. 18이 2013년 5월 18일 공개되었다. 눈에 띄는 새로운 기능들로는 새로운 dtrace 후킹, 렉시컬 ( lexical ) 함수, 더 많은 CORE : : 함수, 보안적인 이유로 인한 해시의 점검 ( overhaul ), 유니코드 6. 2 지원이 있다. [ 32 ] 펄 5. 20이 2014년 5월 27일에 공개되었다. 눈에 띄는 새로운 기능들로는 서브루틴 서명, 해시 슬라이스 / 새로운 슬라이스 문법, 후위 역참조 ( 실험적인 기능 ), 유니코드 6. 3, 일관된 난수 발생기를 사용하는 rand가 있다. [ 33 ] 일부 관찰자들은 펄 5. 10이 현대 펄 운동의 시작점으로 평가하고 있다. [ 34 ] 특히 CPAN 이용을 장려하는 개발 스타일은 최근에 나온 언어의 발전 사항들을 이용하여 높은 품질의 코드를 작성할 수 있게 한다. [ 35 ] 2012년 말과 2013년에 펄 5의 대안을 구현하는 여러 프로젝트가 시작되었다. 라쿠도 펄 팀의
( 구현되지 않은 코드임을 표시하기 위한 기능 ), 암묵적 제한 ( implicit stricture ), 완전한 2038년 문제 대응, 정규 표현식 변환 오버로딩, DTrace 지원, 유니코드 5. 2 지원을 포함한다. [ 29 ] 펄 5. 12. 3이 2011년 1월 21일 공개되었다. 업데이트된 모듈과 일부 문서 변경 사항을 포함하고 있다. [ 30 ] 펄 5. 12. 4가 2011년 6월 20일에 공개되었다. 해당 브랜치의 최신 버전은 5. 15. 5는 2012년 11월 10일에 공개되었다. 펄 5. 14가 2011년 5월 14일 공개되었다. JSON 지원이 5. 14. 2에 기본 내장되었다. 해당 브랜치의 최신 버전은 5. 14. 4의 경우 2013년 10월 10일에 공개되었다. 펄 5. 16이 2012년 5월 20일 공개되었다. 눈에 띄는 새로운 기능들로는 가상으로 구현하려는 펄의 버전을 지정할 수 있는 기능을 들 수 있으며 이로써 사용자가 펄 버전을 업그레이드하더라도 일반적으로 비호환되는 오래된 스크립트를 실행할 수 있게 되었다. [ 31 ] 펄 5. 16은 유니코드 6. 1 업데이트도 포함하고 있다.
로 이동되었으나 언어 상 큰 변화는 없었고 이 버전 들어 이 책에 의해 잘 문서화되었다. 초기 펄 5 [ 편집 ] 펄 4는 1993년 펄 4. 036에 이르기까지 일련의 유지 보수판으로 출시되었다. 당시 래리 월은 펄 4를 버리고 펄 5에 대한 작업을 시작했다. 펄 5의 초기 설계는 1995년 들어 계속되었다. perl5 - porters 메일링 리스트는 1994년 5월 개설되어 펄 5를 다른 플랫폼으로 이식하는 협업이 시작되었다. 이 목록은 펄 5의 개발, 유지 보수, 이식을 위한 주된 포럼으로 남아 있다. [ 16 ] 펄 5. 000은 1994년 10월 17일 공개되었다. [ 17 ] 인터프리터가 대부분 완전히 재작성되었고, 객체, 레퍼런스, 렉시컬 ( my ) 변수, 모듈 등이 추가되었다. 더 중요한 점은 인터프리터 수정 없이도 모듈이 언어의 확장을 위한 매커니즘을 제공한다는 것이다. 이로써 펄 프로그래머들이 새로운 언어 기능들을 추가하더라도 코어 인터프리터는 안정적으로 동작할 수 있게 되었다. 펄 5. 001은 1995년 3월 13일 공개되었다. 펄 5. 002는 1996년 2월 29일 새로운 프로토타입 기능과 더불어
펄(영어: Perl)은 래리 월이 만든 인터프리터 방식의 프로그래밍 언어 혹은 그 인터프리터 소프트웨어를 가리킨다. 펄은 고급 언어, 범용 언어, 인터프리터 언어, 동적 언어 범주에 속한다. 펄은 일반적으로 펄 5로 부르지만 2000년부터 2019년까지 자매 언어 펄 6으로 불리다가 2019년 10월 들어 펄 6라는 이름은 라쿠라는 이름으로 공식적으로 변경되었다.래리 월이 1987년 펄을 처음 만든 후, 펄은 많은 변화를 겪었다. 펄 6은 2000년부터 펄을 다시 설계하면서 개발되기 시작했고, 펄 5와는 독립적으로 개발되었고 서로 영향을 미쳤다. 펄 언어는 실용성을 모토로 하고 있어 C나 sed, AWK, 셸 스크립트 (sh) 등 다른 프로그래밍 언어에서 뛰어난 기능을 많이 도입하여 사용하고 있다. 동시대의 유닉스 명령 도구들이 지닌 불특정한 데이터 길이의 제약 없이 강력한 문자열 처리 기능을 제공하며 이를 통해 텍스트 파일의 조작을 용이하게 만들어 준다. 펄 5는 부분적인 이유로는 타의 추종을 불허하는 정규 표현식, 문자열 구문 분석 기능 덕분에 1990년대 말 들어 인기를 끌기 시작했다.CGI뿐 아니라 펄 5는 그래픽스 프로그래밍, 시스템 관리, 네트워크 프로그래밍, 금융, 생물정보학 등에도 사용된다. 언어의 유연성과 강력함으로 인해 "스크립트 언어들 중의 스위스 군용 사슬톱"(the Swiss Army chainsaw of scripting languages)이라는 별명을 얻었다. 인터프리터 펄은 자유 소프트웨어이며, 아티스틱 라이선스 또는 GPL으로 배포되고 있어 사용자는 둘 가운데 하나의 라이선스를 골라 쓸 수 있다. 유닉스를 비롯해 다양한 플랫폼에서 동작한다. 펄은 매우 표현 능력이 좋은 프로그래밍 언어이기 때문에 주어진 알고리즘의 소스 코드는 짧으면서도 매우 압축적으로 작성할 수 있다.