Co nowego w Ruby 2.6

Ruby 2.6, najnowsza wersja czcigodnego dynamicznego języka, jest teraz dostępna jako wydanie produkcyjne.

Co nowego w Ruby 2.6

Ruby 2.6 dodaje początkową implementację JIT (kompilator just-in-time), aby poprawić wydajność wykonywania programu. Kompilator JIT Rubiego zapisuje kod C na dysku i tworzy proces kompilatora C w celu wygenerowania kodu natywnego. Kompilator JIT jest obsługiwany, gdy Ruby jest budowany przez kompilator GCC, Clang lub Microsoft Visual C ++, który musi być dostępny w czasie wykonywania.

Inne nowe funkcje w Ruby 2.6 obejmują:

  • W przypadku zmiany języka $SAFEnastępuje globalny stan procesu i można ponownie ustawić 0.
  • Poprawiona wydajność funkcji block.callwhen blockjest przekazywana jako blockparametr.
  • Proc#call został przyspieszony.
  • RubyVM::ASTModuł eksperymentalny  , który ma metodę parsowania, która analizuje kod łańcucha i zwraca węzły AST. Ponadto  parse_ filemetoda analizuje plik kodu i zwraca węzły AST.
  • RubyVM::AST::NodeKlasa eksperymentalna wyświetla informacje o położeniu i węzły potomne z Node obiektów.
  • Nazwy stałe mogą zaczynać się wielką literą spoza ASCII.
  • Wprowadzono nieskończone zakresy, które działają tak, jakby nie miały końca.
  • theapWprowadzono Transient Heap ( ), który theapsłuży jako zarządzana sterta dla obiektów pamięci krótkotrwałej, do których odwołują się określone klasy.
  • Obsługa Unicode jest teraz dostępna w wersji 11.
  • Bundler do zarządzania zależnościami klejnotów jest teraz domyślnym klejnotem.

Skąd pobrać Ruby 2.6

Możesz pobrać Ruby 2.6 ze strony internetowej projektu Ruby.

Poprzednia wersja: Ruby 2.5

Pojawiające się w Boże Narodzenie 2017 Ruby 2.5.0 jest pierwszym stabilnym wydaniem z serii 2.5.

Zwiększa wydajność o 5 do 10 procent, usuwając instrukcje śledzenia z kodu bajtowego, który okazał się narzutem. Zamiast tego stosowana jest technika oprzyrządowania dynamicznego. Ponadto przekazywanie bloku przez parametr bloku zostało wykonane trzykrotnie szybciej niż w Ruby 2.4, dzięki zastosowaniu techniki alokacji Lazy Proc.

Inne funkcje poprawiające wydajność obejmują:

  • Generowanie dokumentów zostało usprawnione dzięki przejściu ze starszego analizatora leksykalnego z IRB na Ripper.
  • MutexKlasa została przepisana, aby go zmniejszyć i szybciej. Mutexmoże służyć do zarządzania dostępem do udostępnionych danych z współbieżnych wątków.
  • ERB generuje kod z szablonu z dwukrotnie większą prędkością niż wersja 2.4.
  • Wydajność została ulepszona w wbudowaną metod, w tym Array#concat, Enumerable#sort_byi String#concat.

Inne ulepszenia w Ruby 2.5 obejmują:

  • Struct/new może tworzyć klasy akceptujące argumenty słów kluczowych.
  • Do/endbloki będą teraz działać bezpośrednio z ensure/rescue/else.
  • Biblioteka pp.rb ładuje się automatycznie.
  • Dodano opcję drukowania śladu wstecznego w odwrotnej kolejności. Celem jest uzyskanie głównego komunikatu o błędzie bez konieczności przewijania.
  • Aby usprawnić testowanie, oferowane jest wsparcie dla pomiaru pokrycia gałęzi i metod. Pokrycie gałęzi ujawnia, które gałęzie są wykonywane, a pokrycie metod wskazuje, które metody są wywoływane.

Ruby 2.5 zawiera również poprawkę błędu, w której biblioteka SecureRandom do generowania liczb losowych, która teraz preferuje źródła dostarczane przez system operacyjny niż OpenSSL. Ponadto standardowe biblioteki, takie jak cmath, csv, date, dbm i ipaddr zostały promowane do gemów.

Skąd pobrać Ruby 2.5

Możesz pobrać wersję 2.5, otwierając ten plik tar.gz lub ten plik ZIP.