Sgaoileadh cànain prògramaidh Rust 1.65

Chaidh foillseachadh cànan prògramadh adhbhar coitcheann Rust 1.65, a chaidh a stèidheachadh le pròiseact Mozilla, ach a chaidh a leasachadh a-nis fo sgèith na buidhne neo-eisimeileach neo-phrothaideach Rust Foundation, fhoillseachadh. Tha an cànan a’ cuimseachadh air sàbhailteachd cuimhne agus a’ toirt seachad dòighean air co-shìnteachd obrach àrd a choileanadh fhad ‘s a tha e a’ seachnadh cleachdadh neach-cruinneachaidh sgudail agus ùine ruith (tha ùine ruith air a lughdachadh gu toiseach tòiseachaidh agus cumail suas an leabharlann àbhaisteach).

Bidh dòighean làimhseachaidh cuimhne Rust a’ sàbhaladh an leasaiche bho mhearachdan nuair a bhios iad a’ làimhseachadh chomharran agus a’ dìon an aghaidh dhuilgheadasan a thig am bàrr mar thoradh air làimhseachadh cuimhne aig ìre ìosal, leithid faighinn gu raon cuimhne às deidh dha a bhith air a shaoradh, a’ toirt iomradh air comharran null, cus bufair, msaa. Gus leabharlannan a sgaoileadh, togail a thoirt seachad agus eisimeileachd a riaghladh, bidh am pròiseact a’ leasachadh manaidsear pacaid Cargo. Tha an stòr crates.io a’ faighinn taic airson aoigheachd a thoirt do leabharlannan.

Tha sàbhailteachd cuimhne air a thoirt seachad ann an Rust aig àm cruinneachaidh tro sgrùdadh iomraidh, cumail sùil air seilbh nithean, cumail sùil air beatha nithean (scopes), agus measadh dè cho ceart ‘s a tha ruigsinneachd cuimhne rè coileanadh còd. Bidh Rust cuideachd a’ toirt dìon an aghaidh thar-shruthan iomlan, a’ feumachdainn luachan caochlaideach a thòiseachadh mus tèid an cleachdadh, a’ làimhseachadh mhearachdan nas fheàrr san leabharlann àbhaisteach, a’ cur an gnìomh bun-bheachd iomraidhean neo-sheasmhach agus caochladairean gu bunaiteach, a’ tabhann clò-sgrìobhadh làidir statach gus mearachdan loidsigeach a lughdachadh.

Prìomh innleachdan:

  • Taic a bharrachd airson seòrsachan co-cheangailte gnèitheach (GAT, Generic Associated Types), a leigeas leat aliases seòrsa a chruthachadh co-cheangailte ri seòrsa eile agus a leigeas leat luchd-togail seòrsa a cheangal ri feartan. trait Foo { seòrsa Bar; }
  • Chaidh an abairt “let ... else” a chuir an gnìomh, a’ toirt cothrom dhut sùil a thoirt air suidheachadh maidsidh a’ phàtrain dìreach taobh a-staigh an abairt “let” agus cuir an gnìomh còd neo-riaghailteach mura h-eil am pàtran a’ freagairt. let Ok(count) = u64 ::from_str(count_str) eile { clisgeadh!("Cha ghabh an t-sreath iomlan a pharsadh: '{count_str}'"); };
  • Leig le bhith a’ cleachdadh aithris brisidh gus blocaichean ainmichte fhàgail ro-ùine, a’ cleachdadh ainm a’ bhloca (leubail) gus am bloca a tha ri chrìochnachadh a chomharrachadh. leig toradh = 'bacadh: {do_thing(); ma tha condition_not_met() {briseadh 'bloc 1; } do_next_thing(); ma tha condition_not_met() {briseadh 'bloc 2; } do_last_thing(); 3};
  • Airson Linux, chaidh an comas air fiosrachadh deasbaid a shàbhaladh air leth (split-debuginfo), a bha ri fhaighinn roimhe seo airson an àrd-ùrlar macOS a-mhàin, air a chur ris. Nuair a shònraicheas tu an roghainn “-Csplit-debuginfo=unpacked”, thèid dàta debuginfo ann an cruth DWARF a shàbhaladh ann an grunn fhaidhlichean nì fa leth le leudachadh “.dwo”. Le bhith a’ sònrachadh “-Csplit-debuginfo=packed” cruthaichidh sinn pasgan singilte ann an cruth “.dwp” anns a bheil a h-uile dàta debuginfo airson a’ phròiseict. Gus debuginfo fhilleadh a-steach gu dìreach a-steach don roinn .debug_* de nithean ELF, faodaidh tu an roghainn " -Csplit-debuginfo = dheth" a chleachdadh.
  • Chaidh cuibhreann ùr den API a ghluasad chun roinn de stàball, a’ toirt a-steach dòighean agus buileachadh feartan air an socrachadh:
    • std ::backtrace ::backtrace
    • Ceangailte :: as_ref
    • std :: io :: read_to_string
    • :: cast_mut
    • ::cast_const
  • Tha am feart “const”, a tha a’ dearbhadh comasachd a chleachdadh ann an co-theacsa sam bith an àite seasmhach, air a chleachdadh anns na gnìomhan :: offset_from agus :: offset_from
  • Mar phàirt den ìre mu dheireadh de bhith a’ gluasad buileachadh a’ phròtacal LSP (Language Server Protocol) gu meirge-analyzer, chaidh frithealaiche stub a chuir an àite seann-ghnìomhachadh Rust Language Server (RLS) a bheir seachad rabhadh le moladh gluasad gu a 'cleachdadh meirge-analyzer.
  • Nuair a thathar a’ cur ri chèile, tha taic airson cleachdadh in-loidhne de chòd eadar-mheadhanach MIR air a chomasachadh, a luathaicheas cruinneachadh pacaidean crate àbhaisteach le 3-10%.
  • Gus togail clàraichte a luathachadh, tha manaidsear pacaid Cargo a’ toirt seachad seòrsa de dh’ obraichean a tha a’ feitheamh ri coileanadh sa chiudha.

A bharrachd air an sin, faodaidh tu toirt fa-near don agallamh mu bhith a’ cleachdadh cànan Rust aig Volvo gus pàirtean de shiostaman fiosrachaidh chàraichean a leasachadh. Chan eil planaichean ann airson còd gnàthaichte agus deuchainn ath-sgrìobhadh ann an Rust, ach airson còd ùr, is e Rust aon de na roghainnean as fheàrr leotha airson càileachd a leasachadh aig cosgaisean nas ìsle. Chaidh buidhnean obrach co-cheangailte ri cleachdadh a’ chànain Rust a chruthachadh cuideachd anns na comainn chàraichean AUTOSAR (ARchitecture Siostam Fosgailte Automotive) agus SAE (Comann nan Einnseanairean Automotive).

A bharrachd air an sin, bhruidhinn Dàibhidh Kleidermacher, iar-cheann-suidhe innleadaireachd Google, air an eadar-theangachadh den chòd a chaidh a chleachdadh san àrd-ùrlar Android gus iuchraichean crioptachaidh a riaghladh a-steach do Rust, a bharrachd air cleachdadh Rust ann a bhith a ’buileachadh an DNS thairis air protocol HTTPS anns a’ chruach. airson UWB- chips (Ultra-Wideband) agus anns an fhrèam virtualization (Android Virtualization Framework) co-cheangailte ris a’ chip Tensor G2. Thathas cuideachd a’ leasachadh stacan ùra airson Bluetooth agus Wi-Fi, air an ath-sgrìobhadh ann an Rust, airson Android. Is e an ro-innleachd choitcheann tèarainteachd a neartachadh mean air mhean, an toiseach le bhith ag atharrachadh na pàirtean bathar-bog as so-leònte agus deatamach gu Rust, agus an uairsin a’ leudachadh gu fo-shiostaman co-cheangailte eile. An-uiridh, chaidh cànan Rust a thoirt a-steach don liosta de chànanan a bha ceadaichte airson àrd-ùrlar Android a leasachadh.

Source: fosgailtenet.ru

Cuir beachd ann