Mozilla ogłosiła wydanie Rust 0.9, kompilatora i zestawu narzędzi dla języka programowania Rust. Składnia jest strukturalnie identyczna z C i C++, jednakże jego przeznaczeniem jest być maksymalnie bezpiecznym, aniżeli szybkim i wydajnym. Posiada specjalne zabezpieczenia pamięci, chroni przed przepełnieniem bufora, poprzez alokację pamięci dla programisty i jest przygotowany do przetwarzania współbieżnego.
Zmiany, jakie zaszły:
- Udoskonalono podsystem wejścia/wyjścia i uruchamianie
- Dodano statyczne linkowanie
- Zoptymalizowano czas linkowania
- Zmniejszono różnorodność zamknięć w języku
- Rozpoczęto finalne zmiany, dotyczące obsługi wskaźników w języku. Usunięto wbudowany typ zarządzanie wskaźnikiem, a także towarzyszący mu znak @. Dodano typ inteligentny wskaźnik (smart pointer) do standardowej biblioteki
Rust 0.9 ze statycznym linkowaniem i inteligentnym wskaźnikiem | OSWorld.pl http://t.co/SmSzSSBYMA via @OSWorldpl
Michał Olber liked this on Facebook.
W jakim stopniu jest to kompatybilne z gcc ewentualnie ze standardem c++? Np. da radę skompilować każdy program, który kompiluje się gcc?
Co to znaczy „kompatybilne ze standardem C++”? Rust to zupełnie inny język, mający dość odmienną składnię od C/C++. Jest jednak kompatybilny z ABI języka C i działa to na tej zasadzie co w C++ („extern”).
„Składnia jest strukturalnie identyczna z C i C++”
Skoro jest identyczna, to dowolny kod w c++ powinien działać.
Inaczej mówiąc: twórcy pomyśleli i zapewnili kompatybilność z bibliotekami w C których jest niemało.