Rust 1.37 forritunarmálsútgáfa

birt útgáfu forritunarmáls kerfisins Ryð 1.37, stofnað af Mozilla verkefninu. Tungumálið leggur áherslu á minnisöryggi, veitir sjálfvirka minnisstjórnun og veitir leið til að ná mikilli samsvörun verkefna án þess að nota sorphirðu eða keyrslutíma.

Sjálfvirk minnisstjórnun Rust leysir þróunaraðilann við bendil meðhöndlunar og verndar gegn vandamálum sem stafa af minni meðhöndlun á lágu stigi, eins og eftir-frjáls minni aðgangur, núll bendilinn afvísun, biðminni framúrkeyrsla, og þess háttar. Verið er að þróa pakkastjóra til að dreifa bókasöfnum, tryggja samsetningu og stjórna ósjálfstæði verkefnisins. Hleðsla, sem gerir þér kleift að fá þau bókasöfn sem þarf fyrir forritið með einum smelli. Geymsla er studd til að hýsa bókasöfn crates.io.

Helstu nýjungar:

  • Í rustc þýðandanum veitt stuðningur við hagræðingu byggða á niðurstöðum kóðasniðs (PGO, Profile-Guided Optimization),
    sem gerir þér kleift að búa til ákjósanlegri kóða byggt á greiningu á tölfræði sem safnast upp við framkvæmd forritsins. Til að búa til snið er „-C profile-generate“ fáninn veittur og til að nota sniðið meðan á samsetningu stendur - „-C profile-use“ (upphaflega er forritið sett saman með fyrsta fánanum, keyrir um og eftir að búið er til sniðið, það er sett saman aftur með öðrum fána);

  • Þegar „cargo run“ skipunin er keyrð, sem er þægilegt að nota til að fljótt prófa leikjatölvuforrit, hefur möguleikanum til að velja keyrsluskrá sjálfkrafa verið bætt við ef það eru nokkrar keyranlegar skrár í pakkanum. Sjálfgefin skrá sem á að keyra er ákvörðuð með sjálfgefnu keyrslutilskipuninni í [pakka] hlutanum með pakkabreytum, sem gerir þér kleift að forðast að tilgreina skýrt skráarnafnið í gegnum „-bin“ fánann í hvert skipti sem þú keyrir „cargo run“;
  • Skipunin „farmsali“, sem áður var til staðar sem sér pakki. Skipunin gerir þér kleift að skipuleggja vinnu með staðbundnu afriti af ósjálfstæðum - eftir að hafa keyrt „farmsöluaðila“ eru allir frumkóðar ósjálfstæðis verkefnisins hlaðið niður frá crates.io í staðbundna möppu, sem síðan er hægt að nota til vinnu án aðgangs að kössum. io (eftir að hafa keyrt skipunina birtist vísbending um að breyta stillingunum til að nota möppuna fyrir byggingar). Þessi eiginleiki er nú þegar notaður til að skipuleggja afhendingu rustc þýðanda með pökkun á öllum ósjálfstæðum í einu skjalasafni með útgáfunni;
  • Það er nú hægt að búa til tengla á upptalningarvalkosti með því að nota tegundarsamnefni (til dæmis, í meginmáli fallsins “fn increment_or_zero(x: ByteOption) er hægt að tilgreina “ByteOption::None => 0”), sláðu inn útreikningssmíðar (‹ MyType‹.. ››::option => N) eða Sjálfsaðgangur (í blokkum c &self geturðu tilgreint “Self::Quarter => 25”);
  • Bætti við möguleikanum á að búa til ónefnda fasta í fjölvi. Í stað þess að skilgreina heiti frumefnisins í „const“ geturðu nú notað „_“ stafinn til að velja á virkan hátt auðkenni sem ekki er endurtekið, og forðast nafnaárekstra þegar hringt er í fjölvi aftur;
  • Bætti við möguleikanum á að nota "#[repr(align(N))" eigindina með enums með því að nota setningafræði svipað og að skilgreina AlignN‹T› uppbyggingu með alignment og nota síðan AlignN‹MyEnum›;
  • Nýr hluti af API hefur verið færður í stöðugan flokk, þar á meðal BufReader::buffer, BufWriter::buffer og
    Cell::from_mut,
    Cell::as_slice_of_cells,
    DoubleEndedIterator::nth_back,
    Valkostur::xor
    {i,u}{8,16,64,128,size}::reverse_bits, Wrapping::reverse_bits og
    sneið::copy_within.

Auk þess má geta þess byrjun prófs verkefnið Ósamstilltur-std, sem býður upp á ósamstillt afbrigði af Rust staðalsafninu (gátt á std bókasafninu, þar sem öll viðmót eru boðin í ósamstilltri útgáfu og eru tilbúin til notkunar með ósamstilltri/bíður setningafræði).

Heimild: opennet.ru

Bæta við athugasemd