루비 MRI

Ruby MRI
루비
Ruby-logo-notext.png
개발자마츠모토 유키히로(등)
초기 릴리즈2003년[1] 4월 8일
안정된 릴리스
3.1.0 / 2021년 12월[2] 25일
저장소
기입처C
운영 체제크로스 플랫폼
유형루비 프로그래밍 언어 인터프리터
면허증.루비 라이선스
간이 BSD 라이선스
GNU General Public License (1.9.3 이전)
웹 사이트www.ruby-lang.org
루비 제작자 마츠모토 유키히로.

Matz의 Ruby Interpreter 또는 Ruby MRI(루비 MRI)는 루비 제작자 마츠모토 유키히로의 이름을 딴 루비 프로그래밍 언어의 레퍼런스 구현입니다.2011년 [citation needed]Ruby 언어 사양까지 MRI 구현은 사실상의 참조로 간주되었으며, 특히 사양(RubySpec)을 작성하려는 독립적인 시도가 [3]실패했기 때문입니다.Ruby 1.9부터 Ruby 2.x 이후까지 공식 Ruby 인터프리터는 YARV(Yet Another Ruby VM)[4]입니다.

최신 안정 버전은 Ruby 3.1.0입니다[2].

역사

마츠모토 유키히로(Matz)는 1993년 2월 24일에 루비 제작에 착수하여 1995년에 일반에 공개."루비"는 마츠모토 친구들 사이에서 펄 프로그래밍 언어의 [5]이름을 암시하는 농담 때문에 보석으로 명명되었다.

1.8 브랜치는 2013년 [6]6월까지 유지되며 2008년 [7][8]4월부터 1.8.7 릴리스가 출시되었습니다.이 버전에서는 버그 수정뿐만 아니라 많은 Ruby 기능 확장 기능을 제공합니다.

RubySpec 프로젝트에서는 1.8.6/1.8.7/1.9 동작을 레퍼런스 준거 툴로서 캡처하는 대규모 테스트 스위트를 독자적으로 작성했습니다.Ruby MRI 1.9.2는 Ruby [9]Spec의 99% 이상을 통과했으며, MRI Ruby 2.2는 테스트 중 하나로 크래시되었습니다.MRI 개발자의 도입 제한으로 인해 2014년 [3]말 현재 RubySpec 프로젝트는 중단되었습니다.

라이선스 조건

릴리스 1.9.3 이전에 루비 인터프리터와 라이브러리는 GNU General Public License 또는 Ruby [10]License에 따라 듀얼 라이선스의 자유 및 오픈 소스 소프트웨어로 배포되었습니다.릴리스 1.9.3에서 Ruby's License는 GPLv2의 듀얼 라이선스에서 2절 BSD [11]라이선스의 듀얼 라이선스로 변경되었습니다.

운영 체제

Ruby MRI는 다음 운영 체제에서 사용할 수 있습니다(지원되는 Ruby 버전은 다를 수 있습니다).

이 리스트는 완전하지 않을 수 있습니다.

PowerPC64 퍼포먼스
버전 2.2.[12]1 이후 PowerPC64의 Ruby MRI 퍼포먼스가 [13][14][15]향상되었습니다.

비판

일반적인 제한 사항은 다음과 같습니다.

하위 호환성
버전 1.9와 1.8에는 약간의 의미 [16]차이가 있습니다.루비 2.0의 릴리스는 다른 [17]버전 간의 이러한 충돌을 피하기 위해 노력했습니다.

글로벌 인터프리터 잠금으로 인해 스레드화된 프로그램은 CPU 코어를 여러 개 사용할 수 없습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Ruby-1.8.0 released!". Retrieved 12 January 2018.
  2. ^ a b "Ruby 3.1.0 Released". Retrieved 11 January 2022.
  3. ^ a b Brian Shirai (31 December 2014). "Matz's Ruby Developers Don't Use RubySpec and It's Hurting Ruby". Rubinius blog. Retrieved 16 November 2015.
  4. ^ Matsumoto, Yukihiro (26 Dec 2007). "Subject: [ANN] Ruby 1.9.0 is released". Archived from the original on 2007-12-30.
  5. ^ Bruce Stewart (2001-11-29). "An Interview with the Creator of Ruby". linuxdevcenter.com. O'Reilly. Retrieved 22 February 2014.
  6. ^ shyouhei (30 Jun 2013). "We retire Ruby 1.8.7". ruby-lang.org. Retrieved 22 February 2014.
  7. ^ Musha, Akinori (2008-05-26). "Ruby Core: Ruby 1.8.7-preview4 has been released". Retrieved 2008-05-30. The new version of Ruby includes many bug fixes, lots of feature enhancements and some performance improvements since 1.8.6 while maintaining stability and backward compatibility with the previous release to a high degree, although there are ongoing efforts that need to be done toward adopting RubySpec.
  8. ^ "1.8.7 NEWS". Retrieved 2008-05-30.
  9. ^ Yugui (18 Aug 2010). "Ruby 1.9.2 is released". ruby-lang.org. Retrieved 22 February 2014.
  10. ^ "Ruby License". ruby-lang.org. Retrieved 22 February 2014.
  11. ^ "Ruby 1.9.3 Release News". ruby-lang.org. Retrieved 22 February 2014.
  12. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2015). "Ruby 2.2.1 Released". Retrieved 12 July 2016.{{cite web}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  13. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2015). "v2.2.1 ChangeLog". Retrieved 12 July 2016.{{cite web}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  14. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2014). "Specifying non volatile registers for increase performance in ppc64". Retrieved 12 July 2016.{{cite web}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  15. ^ Gustavo Frederico Temple Pedrosa, Vitor de Lima, Leonardo Bianconi (2014). "Specifying MACRO for increase performance in ppc64". Retrieved 12 July 2016.{{cite web}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  16. ^ Rick DeNatale (December 26, 2007). "Ruby 1.9 released". Infoq.com. Retrieved 22 February 2014.
  17. ^ Yusuke Endoh (24 February 2013). "Ruby 2.0.0-p0 is released". ruby-lang.org. Retrieved 22 February 2014.

외부 링크