Komponentët e Ladybird Browser po rishkruhen në Rust duke përdorur inteligjencën artificiale.

Andreas Kling, themeluesi i shfletuesit të internetit Ladybird, njoftoi vendimin për të përdorur Rust në zhvillimin e projektit dhe fillimin e rishkrimit të pjesëve të Ladybird në këtë gjuhë. Si një eksperiment me C++, motori JavaScript LibJS është rishkruar tashmë në Rust. LibJS u zgjodh për shkak të mbulimit të mirë të testeve, gjë që thjeshton vlerësimin e cilësisë së portit.

Për të përshpejtuar procesin e portimit, u përdorën asistentët e inteligjencës artificiale Claude Code dhe OpenAI Codex, duke mundësuar që rishkrimi i kodit të përfundonte brenda dy javësh. Përkthimi u krye në mënyrë progresive me kontributin e zhvilluesit, i cili dërgoi disa qindra kërkesa te asistentët e inteligjencës artificiale gjatë procesit, duke vendosur se në çfarë rendi dhe çfarë të portonin, si dhe duke specifikuar kërkesat për kodin Rust që rezultonte. Pas marrjes së kodit nga modele të ndryshme të inteligjencës artificiale, rezultati u rishikua dhe u analizua për gabime dhe vendime të dyshimta.

Në fund të fundit, motori i bazuar në Rust kaloi me sukses të gjitha 52898 testet e përputhshmërisë ECMAScript nga suita test262 dhe 12461 testet e regresionit nga projekti Ladybird. Versioni i Rust demonstroi përputhje të plotë midis AST dhe bytecode të gjeneruar dhe versionit C++, pa zbuluar regresione deri më tani. Testet JavaScript gjithashtu nuk treguan përkeqësim të performancës. Për më tepër, një test krahasues i rezultateve të përpunimit të faqeve të internetit duke përdorur versionet C++ dhe Rust të LibJS demonstroi përputhje të plotë.

Rishkrimi i komponentëve të shfletuesit në Rust konsiderohet një projekt dytësor që mund të kërkojë një kohë të konsiderueshme. Zhvillimi parësor është aktualisht në vazhdim në C++. Vendimet në lidhje me nënsistemet që do të rishkruhen në Rust do të merren nga ekipi kryesor i zhvillimit. Kodi i ri i Rust do të bashkëjetojë me kodin ekzistues C++ përmes shtresave të ndërveprimit të përcaktuara në mënyrë të qartë.

Vlen të përmendet se në vitin 2024, zhvilluesit e Ladybird vendosën të përdorin gjuhën e programimit Swift, por hasën ndërveprim të pamjaftueshëm me kodin C++ dhe mbështetje të kufizuar për platformat jo-Apple. Sa i përket Rust, kjo gjuhë njihet për ekosistemin e saj më të pjekur për programimin e sistemeve dhe garancitë e sigurisë. Për më tepër, shumë nga zhvilluesit e Ladybird janë të njohur me këtë gjuhë. Në vitin 2024, Rust nuk u miratua për përdorim në Ladybird për shkak të paradigmës së saj të zhvillimit të bazuar në pronësi, e cila bie ndesh me stilin e orientuar nga objektet të C++.

Andreas Kling dikur punoi te Nokia duke zhvilluar KHTML dhe më vonë te Apple si një nga zhvilluesit e Safari. Ladybird u krijua fillimisht si një aplikacion për sistemin operativ SerenityOS, por në verën e vitit 2024, u nda në një projekt të veçantë dhe mori një donacion prej 1 milion dollarësh. Shfletuesi është shkruar në C++ dhe shpërndahet sipas licencës BSD. Projekti po zhvillon motorin e vet LibWeb, interpretuesin LibJS JavaScript dhe libraritë përkatëse.

Burimi: opennet.ru

Bleni një host të besueshëm për faqet me mbrojtje DDoS, serverë VPS VDS 🔥 Bleni hosting të besueshëm të faqeve të internetit me mbrojtje DDoS, servera VPS VDS | ProHoster