Den sjätte uppdateringen av Ruby 2.6.0-programmeringsspråket finns här

RubyLinux

Efter ett års utveckling publiceras Ruby 2.6.0-versionen, ett dynamiskt objektorienterat programmeringsspråk, som kännetecknas av hög effektivitet för mjukvaruutveckling och innehåller de bästa funktionerna i Perl, Java, Python, Smalltalk, Eiffel, Ada och Lisp.

Projektkoden distribueras under BSD-licenser ("2-paragraf BSDL") och "Ruby", som hänvisar till den senaste GPL-licensen och är helt GPLv3-kompatibel.

Ruby 2.6 är den sjätte stora versionen, förberedd som en del av en planerad utvecklingsprocess, som innebär att man avsätter ett år för att förbereda funktionella förbättringar och skapa korrigerande versioner var 2-3: e månad.

De viktigaste nya funktionerna i Ruby 2.6.0

Med den här nya versionen av Ruby lade till en experimentell implementering av JIT-kompilatorn, vilket gör att du kan förbättra prestandan för applikationer på rubinspråket avsevärt.

Till skillnad från traditionella JIT-kompilatorer, som genererar maskininstruktioner i farten, skriver den föreslagna JIT-kompilatorn i Ruby först C-koden till disken och ringer sedan den externa C-kompilatorn för att generera maskininstruktionerna (GCC-stöd, Clang och Microsoft VC ++).

För att aktivera JIT måste du ange alternativet "–jit" när du startar rubin eller ställa in detta alternativ i RUBYOPT-miljövariabeln.

Jämfört med Ruby 2.5 är inkluderingen av JIT i genomsnitt 1.7 gånger prestandan för CPU-intensiva applikationer.

Samtidigt är utvecklingen fortfarande experimentell och olämplig för belastningar i samband med minneintensivt arbete.

Andra förbättringar som erhölls i denna version var RubyVM :: AbstractSyntaxTree experimentmodul, som tillhandahåller en analyseringsmetod som behandlar de skickade strängarna som Ruby-kod och returnerar ett Abstract Syntax Tree (AST) för den här koden.

Aliaset "#then" kan nu användas för att komma åt "Kernel # yield_self" -metoden. För "Array # |" - metoder och "Array # -" föreslog mer läsbara alias "Array # union" och "Array # Difference".

Konstanta namn kan nu börja med andra stora bokstäver än ASCII.

Support tillhandahölls också för Transient Heap, theap avsedd för objekt med kort livslängd med specifika klasser (Array, Hash, Object, Struct).

rubin-på-skenor

Tack vare theap är det till exempel dubbelt så snabbt att skapa små, kortlivade befintliga haschar. Rdoc-testet visade en ökning i utbytet med 6-7%.

För att öka prestandan för kontextväxlar föreslås infödda implementeringar av coroutines för arkitekturerna arm32, arm64, ppc64le, win32, win64, x86 och amd64. "Fiber.yield" och "Fiber # resume" på 64-bitars Linux-system körs nu nästan 5 gånger snabbare.

Generellt visar intensiva program en prestationsökning på 5%.

Stora förbättringar i Ruby 2.6.0

En uppdaterad version av RubyGems 3.0.1 har tagits emot, där stöd för "–ri" och "–rdoc" -alternativen har upphört, istället för som du ska använda "–dokument" och "–dokument".

Bundler är nu installerat som standard för att hantera gemberoenden.

Lagt till stöd för oavslutade intervall, till exempel "ary [1 ..]" eller "(1 ..). Varje {…} ".

Av de andra förbättringarna som kan markeras kan du hitta:

  • Undantagsalternativet har lagts till i Kernel # -systemmetoden för att höja ett undantag vid fel istället för att returnera falskt.
  • Oneshot-läget har varit läggs till i täckningsmodulen, som kontrollerar om varje rad körs minst en gång.
  • Enumerator :: Chain-klassen och metoderna "Enumerable # chain" och "Enumerator # +" har lagts till för att skapa kedjor med uppräknade värden.
  • Stöd för operatörerna «<<» och «>>» har lagts till i modulerna Proc och Method, till exempel är konstruktionen «(f << g). Call (3)» är identisk med «f (g (3) )) ".

Hur installerar jag Ruby 2.6.0 på Linux?

För att få den här nya versionen av Ruby, öppna bara en terminal på ditt system och skriv ett av följande kommandon

Debian, Ubuntu och derivat

sudo apt-get install ruby-full

CentOS, Fedora och RHEL

sudo yum install ruby

Gentoo

sudo emerge dev-lang/ruby

Arch Linux, Manjaro, Antergos och derivat

sudo pacman -S ruby

openSUSE

sudo zypper install ruby

Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   Daniel sade

    Kommandona apt-get yum etc går till standardförvaren för distributionerna, som vanligtvis är gamla och du kommer inte att ha version 2.6 utan en annan gammal version.