Tízszeres gyorsulás a TypeScript motor Go nyelvre való átírása után

 A TypeScript csapata többször próbálta már az eredeti JavaScript motort átírni, más programozási nyelvre, de ez idáig ezek a próbálkozások nem hozták a kívánt eredményt. A napokban azonban bejelentették, hogy a Go nyelvre történő átírással áttörést értek el.

Az átírás régóta szükséges volt, mivel a JavaScript nem képes natívan támogatni a többszálúsítást, így a TypeScript sem tudta kihasználni a modern processzorok képességeit. Az alapvető cél az átírással tehát a hatékonyság növelése volt. Az eddigi eredmények alapján tízszer, helyenként akár tizenötször gyorsabbá váltak az egyes funkciók, úgy mint például a különböző IDE-kbe való betöltés, típusellenőrzés, hibaellenőrzés, kódgenerálás. Az ilyen változások hozzájárulnak a fejlesztő ciklus rövidüléséhez a hatékonyabb munkavégzéshez és a gyorsabb piacra jutáshoz.

Az átírás sikeréhez hozzájárult a feladathoz leginkább illeszkedő nyelv kiválasztása. Az elsődleges célt a párhuzamosítás natív támogatását több nyelv is támogatta volna, így például felmerült a Rust használata is. Sőt többen kritizálták is a csapatot, hogy miért nem azt választották. Bár a csapat abban egyetértett, hogy természetesen a Rust-ra való átírás is egy hatékony eredményt hozott volna, de a Go nyelv struktúrája nagyon közel áll a TypeScript struktúrájához, így az átírást probléma mentesen meg lehetett oldani, míg Rust esetében ez nehézségeket okozott volna.

Az új verzió még folyamatban van, de az ígéretek szerint valamikor az év második felében elérhető lesz egy béta verzió és a végleges valamikor a TypeScript 7.0-val lesz elérhető. A fejlesztői munka addig sem áll le, mivel egyrészt az átírás még nem teljes, másrészt a JavaScript motor fejlesztése is egy ideig még tovább zajlik. A felhasználóknak azonban a tervek szerint nem kell semmilyen különösebb előkészületet tenniük majd a váltáshoz. 

Osszd meg ezt a cikket
Megérkezett a Babylon.js 8.0
A Microsoft egy évnyi intenzív fejlesztés után végre bemutatta a Babylon.js legújabb, 8.0-s verzióját. Az új kiadás számos korszerű funkcióval érkezik, melyek célja, hogy még gyorsabb és látványosabb, interaktív webes élményeket tegyen lehetővé. Az IBL árnyékok segítségével a környezet megvilágítása valósághűbbé válik, míg a területi fények lehetőséget adnak arra, hogy a 2D-s fénykibocsátás egyszerűen, de hatékonyan jelenjen meg. Emellett az alfa állapotban bemutatott Node Render Graph révén a fejlesztők teljes irányítást kapnak a renderelési folyamat felett, míg az új Lightweight Viewer és a WGSL Core Engine shaderek tovább csökkentik a fejlesztési időt és javítják a teljesítményt.
Go 1.24 új funkciók
Elérhető a Go 1.24 legújabb verziója amely számos hasznos új funkciót kínál a Go fejlesztők számára. Egyrészt tovább bővültek a nyelvi eszközök, jobb hatékonyabb implementáció váltja a korább Map implementációt. Másrészt javul a memória kezelés az újonnan bevezetett gyenge mutatóknak és a jobb memória allokátornak köszönhetően. Az új verzió számos újítást kínál, amelynek teljes listája itt érhető el, a cikkben néhány fontosabb változás bemutatására szorítkozunk.
A Linux kernel dráma közepette érkezett a Rust 1.85.0
Az 1.85 a 2024-es kiadás egy újabb javítása, amely tovább javítja memóriabiztonságot és az egyidejűségi modelleket és igyekszik egy jobb és megbízhatóbb eszközöket nyújtani teljesítménykritikus rendszerek fejlesztéséhez. A Rust elfogadtatása azonban, pont ott halad a legnehezebben, ahol a leginkább létjogosultsága van, a Linux kernel fejlesztésében.
Megjelent a Bun 1.2
A JavaScript és TypeScript fejlesztők számára izgalmas hírt közölt a Bun csapata, amelyben bemutatták a most megjelent a Bun 1.2, az all-in-one futtatókörnyezet és eszközkészlet legújabb verzióját.