Programavimas

„Ruby 3“ peržiūri lygiagrečią vykdymą

„Ruby 3.0.0“, planuojamas seniai sukurtos atvirojo kodo dinaminės kalbos atnaujinimas, dabar yra kaip peržiūra. Svarbiausi naujosios versijos variantai yra lygiagretus vykdymas ir tipo aprašymo galimybės.

Lygiagretus vykdymas yra eksperimentinės funkcijos, pavadintos „Ractor“, pavidalu, kuris yra panašus į aktoriaus modelį lygiagretumas, skirtas lygiagrečiam vykdymui be rūpesčių dėl saugos. Kūrėjai gali pagaminti kelis traktorius ir juos paleisti lygiagrečiai. Šios lygiagrečios programos gali būti apsaugotos sriegiu, nes raktoriai negali dalytis įprastais objektais. Bendravimą tarp raktorių palaiko pranešimų perdavimas.

„Ruby 3.0.0“ taip pat pristato RBS, už kurį kalbama apibūdinant „Ruby“ programų tipus. „Ruby 3.0.0“ pristatomas su „rbs“ brangakmeniu, kuris leidžia analizuoti ir apdoroti RBS parašytus tipo apibrėžimus. Tipo tikrintuvai, įskaitant tipo profilius ir kitus įrankius, palaikančius RBS, geriau supras „Ruby“ programas, naudodamiesi RBS apibrėžimais.

RBS skirtas palaikyti dažniausiai matomus „Ruby“ programų modelius. Išplėstinius tipus galima rašyti, įskaitant sąjungų tipus, metodų perkrovimą ir generinius. Taip pat palaikomas ančių rašymas naudojant sąsajos tipus.

Be „Ractor“ ir „RBS“, „Ruby 3.0.0“ leidimas turėtų pasiūlyti daugybę kitų galimybių:

  • Planavimo priemonė, taip pat eksperimento stadijoje, skirta blokavimo operacijų perėmimui. Nustatyta kaip Temos # planuoklis, ši galimybė suteikia lengvą lygiagretumą nekeičiant esamo kodo.
  • Atminties rodinys, dar viena eksperimentinė funkcija, yra C-API, nustatytas keistis neapdorotos atminties sritimi, pvz., Skaitiniu masyvu arba bitų žemėlapio atvaizdu, tarp plėtinių bibliotekų. Šios bibliotekos taip pat gali bendrinti atminties srities, kurią sudaro forma, elemento forma ir kt., Metaduomenis.
  • Patobulintas „Ruby MJIT“ (metodais pagrįsto „Just In Time“) kompiliatoriaus našumas.
  • Raktinių žodžių argumentų atskyrimas nuo kitų argumentų.
  • Hash # išskyrus pastatytas.
  • Teisingas užduoties pareiškimas.
  • Nesibaigiantis metodo apibrėžimas.
  • Radimo modelio pridėjimas.

Rugsėjo 25 d. Pristatytą „Ruby 3.0.0“ peržiūrą galima atsisiųsti iš ruby-lang.org. Antroje peržiūroje „Ruby“ statybininkai planuoja įtraukti tipo profilį, kuris naudojamas kaip statinės analizės funkcija. Šiuo metu stabilios „Ruby“ versijos yra 2.7.1 ir 2.6.6 versijos.

$config[zx-auto] not found$config[zx-overlay] not found