Programavimas

Kas naujo „Ruby 2.6“

„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 kada blokuoti yra perduodamas kaip a blokuoti parametras.
  • Proc # skambutis buvo paspartinta.
  • EksperimentinisRubyVM :: ASTmodulis, 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 :: mazgasklasė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_byir Stygos # concat.

Kiti „Ruby 2.5“ patobulinimai:

  • Struktūrinis / naujas gali sukurti klases, kurios priima raktinių žodžių argumentus.
  • Daryti / baigti blokai dabar dirbs tiesiogiai už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ą.