{{위키데이터 속성 추적}}
{{프로그래밍 언어 정보
| 이름 = 라쿠
| 그림 = [[파일:Camelia.svg|250px]]
| 패러다임 = [[멀티 패러다임]]
| 설계자 = [[래리 월]]
| released = 
| latest release version = 6.d 'Diwali'<ref>{{웹 인용|title=Announce: Raku Perl 6 'Diwali' 6.d Language Specification Release |publisher=Zoffix Znet |website=blogs.perl.org |date=2018-11-05 |url=http://blogs.perl.org/users/zoffix_znet/2018/11/announce-raku-perl-6-diwali-6d-language-specification-release.html |access-date=2022-08-19}}</ref>
| latest release date = {{시작 날짜와 나이|df=yes|2020|10|24}}
| 형 체계 = [[자료형 체계|동적]], [[자료형 체계|정적]], 점진적
| 구현체 = [[라쿠도 펄|라쿠도]]
| 영향을 받은 언어 = [[하스켈]],<ref>{{웹 인용|url=http://www.perlfoundation.org/perl6/index.cgi?glossary_of_terms_and_jargon|제목=Glossary of Terms and Jargon|date=February 28|work=Perl Foundation Perl 6 Wiki|publisher=[[펄 재단|The Perl Foundation]]|accessdate=2012-02-09|보존url=https://web.archive.org/web/20120121145808/http://www.perlfoundation.org/perl6/index.cgi?glossary_of_terms_and_jargon|보존날짜=2012-01-21|url-status=dead}}</ref> [[자바스크립트]], [[펄|펄 5]], [[루비 (프로그래밍 언어)|루비]], [[스몰토크]]
| 영향을 준 언어 = 
| 운영 체제 = [[크로스 플랫폼]]
| 라이선스 = [[GNU GPL]], [[아티스틱 라이선스]]
| 웹사이트 = {{URL|raku.org}}
}}

'''라쿠'''(Raku, 과거 명칭: 펄 6/Perl 6)는 [[펄]] [[프로그래밍 언어]]의 주요 버전이다. 현대의 수많은 역사적인 언어들의 요소들이 도입되어 있다. 초기 버전의 펄과의 [[하위 호환성]]이 목적은 아니지만 [[호환성 모드]]는 규격의 일부이다. 라쿠의 디자인 설계는 2000년에 시작되었다.

== 구현체 ==
Niecza는 최적화 및 효율적인 구현 연구에 초점을 맞추고 있으며 [[공통 언어 기반]]을 대상으로 한다.<ref name="nieczareadme">{{웹 인용
  | url = https://github.com/sorear/niecza/blob/master/README.pod
  | 제목 = Niecza README.pod
  | last = O'Rear
  | first = Stefan
  | date = 29 November 2011
  | accessdate = 2012-01-12
}}</ref>

== 예제 ==
=== [[Hello world 프로그램]] ===
<syntaxhighlight lang="perl6">
 say 'Hello, world'
</syntaxhighlight>

=== [[퀵소트]](Quicksort) ===
<syntaxhighlight lang="perl6">
 # Empty list sorts to the empty list
 multi quicksort([]) { () }

 # Otherwise, extract first item as pivot...
 multi quicksort([$pivot, *@rest]) {
     # Partition.
     my @before = @rest.grep(* < $pivot);
     my @after  = @rest.grep(* >= $pivot);

     # Sort the partitions.
     (quicksort(@before), $pivot, quicksort(@after))
 }
</syntaxhighlight>

=== [[하노이 탑]](Tower of Hanoi) ===
<syntaxhighlight lang="perl6">
 multi sub hanoi(0, $, $, $) { }                         # No disk, so do not do anything
 multi sub hanoi($n, $a = 'A', $b = 'B', $c = 'C') {     # Start with $n disks and three pegs A, B, C
     hanoi $n - 1, $a, $c, $b;                           # firstly move top $n - 1 disks from A to B
     say "Move disk $n from peg $a to peg $c";           # then move last disk from A to C
     hanoi $n - 1, $b, $a, $c;                           # lastly move $n - 1 disks from B to C
 }
</syntaxhighlight>

== 각주 ==
<references />

== 외부 링크 ==
* {{공식 웹사이트}}
* [http://design.perl6.org/ 공식 펄 6 설계 문서] {{웨이백|url=http://design.perl6.org/ |date=20141223110839 }}. 개요 (공식 언어 명세). ''참조를 위해 대재앙과 계시록들이 연결되어 있지만 개요는 항상 최신으로 유지되고 있으며, 주요 권장 참조임을 유의하자.''
* [http://dev.perl.org/perl6/rfc 커뮤니티 RFC 원본] {{웨이백|url=http://dev.perl.org/perl6/rfc |date=20120316183926 }} - ''펄6의 역사에 관심이 있는 경우에만.''
* [http://doc.perl6.org/ 언어와 라이브러리 문서]
* [https://web.archive.org/web/20070306200607/http://planetsix.perl.org/ Planet Perl 6] - 펄 6를 주제로 포스팅하는 블로그들의 집합
* [http://perlgeek.de/en/article/5-to-6 Perl5 to Perl6] - 펄 5를 펄 6의 문법과 기능들로 변환하는 Moritz Lenz의 지침
* [https://web.archive.org/web/20060704213227/http://wiki.osdc.org.il/index.php/Larry_Wall_-_Present_Continuous,_Future_Perfect Present Continuous, Future Perfect] - 이스라엘 [[네타니아]]에서 열렸던 오픈 소스 개발자 컨퍼런스 2006에서 [[래리 월]]과 이루어진 펄 5와 펄 6에 대한 논의 (슬라이드와 음성 녹음에 대한 링크가 HTML로 함께 보관돼있음)

{{펄}}
{{토막글|프로그래밍 언어}}

[[분류:펄]]
[[분류:스크립트 언어]]
[[분류:C로 작성된 자유 소프트웨어]]
[[분류:자유 컴파일러와 인터프리터]]
[[분류:다중 패러다임 프로그래밍 언어]]
[[분류:고급 프로그래밍 언어]]