개발자 | 패럿 재단 |
---|---|
안정화 버전 | 8.1.0
/ 2016년 2월 16일[1] |
저장소 | |
프로그래밍 언어 | C |
운영 체제 | 크로스 플랫폼 |
종류 | 가상 머신 |
라이선스 | 아티스틱 라이선스 2.0 |
웹사이트 | www |
패럿(Parrot)은 동적 언어를 효율적으로 실행할 수 있도록 설계된 레지스터 기반 프로세스 가상 머신이다. 패럿 어셈블리어와 PIR (중간 언어)를 패럿 바이트코드로 컴파일하여 실행할 수 있다. 패럿은 자유 및 오픈 소스 소프트웨어이다.[2]
패럿은 펄 프로그래밍 커뮤니티에서 비롯하였으며 오픈 소스 및 자유 소프트웨어 운동으로부터 도움을 받아 개발되어 있다. 그 결과 펄의 라이선스(아티스틱 라이선스 2.0)와 호환된다는데 중점을 두고 있다.
개발을 위한 안정적인 API를 갖춘 버전 1.0은 2009년 3월 17일에 공개되었다.[3]
패럿은 스택 기반인 대부분의 가상 머신과 달리 대부분의 하드웨어 CPU와 같이 레지스터 기반이다. 패럿은 다음의 네 종류의 레지스터를 제공한다.
set I1, 4 inc I1 # I1 is now 5 add I1, 2 # I1 is now 7 set N1, 42.0 dec N1 # N1 is now 41.0 sub N1, 2.0 # N1 is now 39.0 print I1 print ', ' print N1 print "\n" end
.sub 'main' :main
$I1 = 4
inc $I1 # $I1 is now 5
$I1 += 2 # $I1 is now 7
$N1 = 42.0
dec $N1 # $N1 is now 41.0
$N1 -= 2.0 # $N1 now 39.0
print $I1
print ', '
print $N1
print "\n"
.end