Ruby 2.6.0 -ohjelmointikielen kuudes päivitys on täällä

Rubylinux

Vuoden kehityksen jälkeen julkaistaan ​​Ruby 2.6.0 -julkaisu, dynaaminen olio-ohjelmointikieli, jolle on ominaista korkea ohjelmistokehityksen tehokkuus ja joka sisältää Perlin, Java: n, Pythonin, Smalltalkin, Eiffelin, Adan ja Lispin parhaat ominaisuudet.

Projektikoodi jaetaan BSD-lisensseillä ("2-lauseke BSDL") ja "Ruby", jotka viittaavat uusimpaan GPL-lisenssiin ja ovat täysin GPLv3-yhteensopivia.

Ruby 2.6 on kuudes pääversio, joka on valmistettu osana suunniteltua kehitysprosessia, johon sisältyy vuoden käyttö toiminnallisten parannusten valmistelemiseen ja korjaavien versioiden luomiseen 2-3 kuukauden välein.

Tärkeimmät uudet ominaisuudet Ruby 2.6.0: ssa

Tämän uuden Ruby-julkaisun kanssa lisäsi JIT-kääntäjän kokeellisen toteutuksen, jonka avulla voit parantaa merkittävästi Ruby-kielen sovellusten suorituskykyä.

Toisin kuin perinteiset JIT-kääntäjät, jotka tuottavat koneohjetta lennossa, ehdotettu Rubitin JIT-kääntäjä kirjoittaa ensin C-koodin levylle ja kutsuu sitten ulkoista C-kääntäjää luomaan koneohjeet (GCC tukee, Clang ja Microsoft VC ++).

Jos haluat ottaa JIT: n käyttöön, sinun on määritettävä "–jit" -vaihtoehto aloitettaessa rubiinia tai asetettava tämä vaihtoehto RUBYOPT-ympäristömuuttujaan.

Ruby 2.5: een verrattuna JIT: n sisällyttäminen on keskimäärin 1.7-kertainen CPU-intensiivisten sovellusten suorituskykyyn verrattuna.

Samaan aikaan kehitys on edelleen kokeellista ja ei sovellu huonosti muistiin liittyvään työhön liittyviin kuormiin.

Muita parannuksia, jotka saatiin tässä versiossa, olivat RubyVM :: AbstractSyntaxTree kokeellinen moduuli, joka tarjoaa jäsentämismenetelmän, joka käsittelee välitetyt merkkijonot Ruby-koodina ja palauttaa tälle koodille abstraktin syntaksipuun (AST).

Nyt aliasta "#then" voidaan käyttää menetelmään "Kernel # yield_self". "Array # |" - menetelmille ja "Array # -" ehdotti luettavampia aliaksia "Array # union" ja "Array # Difference".

Jatkuvat nimet voivat nyt alkaa muilla isoilla kirjaimilla kuin ASCII.

Tukea tarjottiin myös lyhytaikaisille esineille tarkoitettuun Transient Heap -tuotteeseen tietyillä luokilla (Array, Hash, Object, Struct).

rubiini-kiskot

Esimerkiksi theapin ansiosta pienten, lyhytaikaisten olemassa olevien hashien luominen on nyt kaksinkertaista. Rdoc-testi osoitti tuoton kasvavan 6-7%.

Kontekstikytkimien suorituskyvyn parantamiseksi ehdotetaan korutiineiden natiivia toteutuksia arkkitehtuureille arm32, arm64, ppc64le, win32, win64, x86 ja amd64. "Fiber.yield" ja "Fiber # resume" 64-bittisissä Linux-järjestelmissä toimivat nyt lähes viisi kertaa nopeammin.

Yleensä intensiivisten ohjelmien suorituskyky kasvaa 5%.

Suurimmat parannukset Ruby 2.6.0: ssa

Päivitetty versio RubyGems 3.0.1: stä on vastaanotettu, jossa "–ri" - ja "–rdoc" -vaihtoehtojen tuki on lopetettu. Sen sijaan sinun tulisi käyttää "–document" ja "–no-document".

Bundler on nyt asennettu oletuksena hallitsemaan helmi-riippuvuuksia.

Lisätty tuki keskeneräisille alueille, esimerkiksi "ary [1 ..]" tai "(1 ..). Jokainen {…} ».

Muista korostettavista parannuksista löydät:

  • Poikkeusasetus on lisätty Kernel # system -menetelmään, jotta virheestä saataisiin poikkeus virheellisen palauttamisen sijaan.
  • Onehot-tila on ollut lisätään kattavuusmoduuliin, joka tarkistaa, suoritetaanko kukin rivi ainakin kerran.
  • Enumerator :: Chain -luokka ja siihen toteutetut "Enumerable # chain" - ja "Enumerator # +" -menetelmät lisätään luodaksesi lueteltujen arvojen ketjuja.
  • Tuki operaattoreille «<<» ja «>>» on lisätty Proc- ja Method-moduuleihin, esimerkiksi rakenne «(f << g) .puhelu (3)» on identtinen «f (g (3) )) ".

Kuinka asentaa Ruby 2.6.0 Linuxiin?

Saadaksesi uuden Ruby-version, avaa vain päätelaite järjestelmässäsi ja kirjoita jokin seuraavista komennoista

Debian, Ubuntu ja johdannaiset

sudo apt-get install ruby-full

CentOS, Fedora ja RHEL

sudo yum install ruby

Gentoo

sudo emerge dev-lang/ruby

Arch Linux, Manjaro, Antergos ja johdannaiset

sudo pacman -S ruby

openSUSE

sudo zypper install ruby

Kommentti, jätä sinun

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Daniel dijo

    Apt-get yum etc -komennot menevät jakelujen oletustietovarastoihin, jotka ovat yleensä vanhoja, eikä sinulla ole versiota 2.6, vaan toista vanhaa versiota.