„Ruby 2.6“, naujausia garbingos dinamiškos kalbos versija, dabar yra prieinama kaip gamybos leidimas.
Kas naujo „Ruby 2.6“
„Ruby 2.6“ prideda pradinį JIT („just-in-time compiler“) diegimą, kad pagerėtų programos vykdymas. Ruby's JIT kompiliatorius įrašo C kodą į diską ir sukuria C kompiliatoriaus procesą, kad generuotų gimtąjį kodą. JIT kompiliatorius palaikomas, kai „Ruby“ sukuria GCC kompiliatorius, „Clang“ arba „Microsoft Visual C ++“, kuris turi būti pasiekiamas vykdymo metu.
Kitos naujos „Ruby 2.6“ funkcijos apima:
- Pakeitus kalbą,
$ SAUGA
yra proceso visuotinė būsena ir 0 galima nustatyti dar kartą. - Pagerintas
blokuoti. skambutis
kadablokuoti
yra perduodamas kaip ablokuoti
parametras. Proc # skambutis
buvo paspartinta.- Eksperimentinis
RubyVM :: AST
modulis, turintis analizavimo metodą, kuris analizuoja eilutės kodą ir grąžina AST mazgus. Taip patanalizuoti failą
metodas analizuoja kodo failą ir grąžina AST mazgus. - Eksperimentinis
RubyVM :: AST :: mazgas
klasės paviršių informaciją apie vietą ir vaikų mazgai išMazgas
objektai. - Nuolatiniai vardai gali prasidėti ne ASCII didžiosiomis raidėmis.
- Pristatomi begaliniai diapazonai, kurie veikia taip, tarsi jiems nebūtų pabaigos.
- Laikinas krūva (
žirgas
) yra įvesta sužirgas
tarnauja kaip valdomas kaupas trumpalaikiams atminties objektams, į kuriuos nurodo konkrečios klasės. - „Unicode“ palaikymas dabar yra 11 versijos.
- „Bundler“, skirtas valdyti brangakmenių priklausomybes, dabar yra numatytasis brangakmenis.
Kur atsisiųsti „Ruby 2.6“
„Ruby 2.6“ galite atsisiųsti iš „Ruby“ projekto svetainės.
Ankstesnė versija: „Ruby 2.5“
Atvykęs į 2017 m. Kalėdų dieną, „Ruby 2.5.0“ yra pirmasis stabilus leidimas iš 2.5 serijos.
Tai padidina našumą nuo 5 iki 10 procentų, pašalindami pėdsakų instrukcijas iš baitekodo, kuris, kaip nustatyta, yra pridėtinis. Vietoj to naudojama dinaminė instrumentavimo technika. Be to, naudojant „Lazy Proc“ paskirstymo techniką, blokas perduodamas bloko parametru tris kartus greičiau nei buvo „Ruby 2.4“.
Kitos funkcijos, gerinančios našumą, yra šios:
- Dokumentų kūrimas buvo sustiprintas perėjus nuo seno leksinio analizatoriaus iš IRB į „Ripper“.
-
Mutex
klasė buvo perrašyta, kad ji būtų mažesnė ir greitesnė.Mutex
gali būti naudojamas valdyti prieigą prie bendrinamų duomenų iš vienu metu esančių gijų. - ERB kodą iš šablono sugeneruoja dvigubai greičiau nei 2.4 versija.
- Patobulinta integruotų metodų, įskaitant
Masyvas # concat
,Suskaičiuojamas # sort_by
irStygos # concat
.
Kiti „Ruby 2.5“ patobulinimai:
Struktūrinis / naujas
gali sukurti klases, kurios priima raktinių žodžių argumentus.Daryti / baigti
blokai dabar dirbs tiesiogiaiužtikrinti / gelbėti / dar
.- Pp.rb biblioteka įkeliama automatiškai.
- Pridėta parinktis atspausdinti atgalinę seką atvirkštine tvarka. Tikslas yra gauti pagrindinį klaidos pranešimą nereikalaujant slinkti.
- Norint patobulinti testavimą, siūloma filialų ir metodų aprėpties matavimas. Filialų aprėptis atskleidžia, kurie filialai vykdomi, o metodų aprėptis nurodo, kurie metodai yra naudojami.
„Ruby 2.5“ taip pat yra klaidų taisymas, kuriame saugoma atsitiktinių skaičių generavimo biblioteka „SecureRandom“, kuri dabar teikia pirmenybę OS teikiamiems šaltiniams, o ne „OpenSSL“. Be to, standartinės bibliotekos, tokios kaip cmath, csv, date, dbm ir ipaddr, buvo paaukštintos iki brangakmenių.
Kur atsisiųsti „Ruby 2.5“
2.5 versiją galite atsisiųsti atidarydami šį tar.gz failą arba šį ZIP failą.