Man Yue Mo z GitHub Security Lab se podrobně rozepsal o již opravené zranitelnosti CVE-2023-6241 v Arm Mali GPU umožňující získání roota na telefonu Pixel 8 s povoleným MTE (Memory Tagging Extension).
V San José probíhá vývojářská konference NVIDIA GTC 2024. CEO společnosti NVIDIA Jensen Huang měl dvouhodinovou keynote, ve které představil celou řadu novinek: NVIDIA Blackwell platform, NVIDIA NIM microservices, NVIDIA Omniverse Cloud APIs, Project GR00T, …
Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.
Od 21. do 23. března proběhnou Arduino Days 2024. Sledovat bude možné oficiální streamy. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.
Letošní ročník konference LinuxDays se uskuteční o víkendu 12. a 13. října, opět se potkáme v pražských Dejvicích na FIT ČVUT. Také během letošního ročníku nás budou čekat desítky přednášek, workshopy, stánky a spousta doprovodného programu. Aktuální dění můžete sledovat na Twitteru, Facebooku nebo na Mastodonu, přidat se můžete také do telegramové diskusní skupiny.
Byla vydána nová major verze 2.0.0 a krátce na to opravné verze 2.0.1 open source online editoru Etherpad (Wikipedie) umožňujícího společné úpravy v reálném čase.
Matematický software GNU Octave byl vydán ve verzi 9.1.0. Podrobnosti v poznámkách k vydání. Nově je preferovaný grafický backend Qt a preferovaná verze Qt 6. V tomto vydání byly přepracovány funkce pro převod čísel z desítkové soustavy. Jako obvykle jsou zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu březnový souhrn novinek. Vypíchnout lze, že pracují na virtuálním asistentu PineVox a zatím bezejmenných sluchátkách na lícní kosti (bone conduction).
Hyprland, kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, je již dva roky starý. Při té příležitosti byla vydána verze 0.37.0 (a záhy opravná 0.37.1 řešící chybu ve vykreslování oken). Nově závisí na knihovně hyprcursor, která poskytuje škálovatelné kurzory myši.
Rust je víceúčelový, multiparadigmatický, kompilovaný programovací jazyk, vyvinutý Mozilla Research. Je navržen jako "bezpečný, paralelní, praktický programovací jazyk", podporující čistě funkcionální, imperativní, procedurální, a objektově orientované programovací styly.
Cílem Rustu je být dobrým jazykem pro vytváření vysoce paralelních a vysoce bezpečných systémů. Toto byl základ pro soubor vlastností s důrazem na bezpečnost, kontrolu rozvržení paměti, a paralelizmu. Výkon Rustu je srovnatelný s výkonem C a C++.
Syntaxe Rustu je podobná syntaxi C a C++, s bloky kódu ohraničenými složenými závorkami, a řídící klíčová slova programu jako if, else, while, a for. Ne všechna klíčová slova jazyků C a C++ jsou přítomna, zatímco některá další (jako například match pro vícenásobné skoky, podobné switch v jiných jazycích) byla zaměněna nebo přidána. Přes syntaktickou podobnost je Rust sémanticky velmi odlišný od C a C++.
Tento systém je navržen být paměťově bezpečný, nepovolující neinicializované ukazatele (NULL) a znemožňující neplatné ukazatele. Datové hodnoty mohou být inicializovány pouze několika pevnými způsoby, tyto všechny však vyžadují inicializovaný vstup. Životní cyklus ukazatelů a jejich neměnnost umožňuje kompilátoru předejít mnohým typům chyb, které jsou možné v C++, a to i při použití jeho inteligentních ukazatelů.
Tento typový systém podporuje způsob podobný typovým třídám, jménem traits, inspirovaném přímo jazykem Haskell. Jedná se o nástroj pro ad-hoc polymorfizmus, čehož bylo dosaženo přidáním omezení psát deklarace proměnných. Další vlastnosti z jazyka Haskell, jako jsou higher-kinded polymorfizmus, zatím nejsou podporovány.
Rust nepoužívá automatickou správu dat (garbage collection), jako je použita jazyky Java a .NET .
Rust umožňuje odvození typu ('type-inference') pro proměnné deklarované použitím klíčového slova let. Tyto proměnné, původně inicializované s cílem určit jejich typ, nevyžadují zachovat původně přidělenu hodnotu. Pokud kompilátor nenalezne příslušné větvi proměnné přesnou hodnotu, kompilace končí chybou.
Funkce mohou používat generické parametry, ale ty musí být vázány traity. Neexistuje způsob, jak obejít signatury typů a přitom ve funkcích a operátorech využívat generické proměnné.
Objektový systém v Rustu je založen okolo implementací traitů a struktur. Jejich použití nahrazuje roli tříd v jiných (objektových) jazycích, a je definována klíčovým slovem impl. Dědičnost a polymorfizmus jsou poskytovány traity; umožňují je metody, které jsou definovány v mixinech k implementaci. Strukturované typy jsou použity pro definici polí. Implementace a traity nemohou definovat pole sami, a pouze traity mohou poskytovat inheritanci, kvůli zamezení diamond problem jazyka C++.
Renderovací engine nové generace Mozilla Servo a Mozilla Firefox je vyvíjeno v jazyce Rust
Rust a Servo jsou vyvíjeny společně Mozillou a Samsungem. Servo je oproti standartnímu renderovacímu jádru až 4x rychlejší mj. také díky dobrému paralelizmu.
Nyní existuje překladač (více zde) z jazyka C do jazyka Rust. Řeší mj. překlad konstrukcí jazyka C s příkazem goto. Je napsán v Haskellu. Mozilla podporuje jeho vývoj.
Prostředí: | |
Licence: | MPL, APL |
Domovská stránka: | http://www.rust-lang.org/ (1147×) |
Adresa ke stažení: | http://www.rust-lang.org/ |
Je alternativou k: | CPP, C, D, Go |
Počet uživatelů: | |
Dokument vytvořil: Georgeek, 5.7.2014 17:44 | Poslední úprava: Georgeek, 15.4.2022 19:48 | Další přispěvatelé: Fluttershy, yay!, candat | Historie změn | Zobrazeno: 7177×
Tiskni Sdílej: