Na łamach naszego bloga z uwagą śledzimy, jak Rust budzi coraz większe zainteresowanie największych branżowych graczy. Według wielu (takiego zdanie jest między innymi szef inżynierii Intela) rozwijany pod okiem Mozilli język ma szansę zastąpić C i C++ w programowaniu systemowym. Swoje zainteresowanie wielokrotnie podkreślali przedstawiciele Microsoftu. Wiemy nawet, że trwają eksperymenty z przepisywaniem pojedynczych komponentów Windowsa właśnie na Rusta. Tym ciekawsze są informacje dotyczące Projektu Verona.
Zainteresowanie Microsoftu Rustem bierze się za troski o bezpieczeństwo. Przez dekady korporacja w pracach między innymi nad Windowsem czy Officem korzystała z duetu C i C++. Problem w tym, że języki te dopuszczają błędy w obsłudze pamięci, co jest głównym źródłem podatności oprogramowania produkowanego w Redmond. W rezultacie Microsoft Security Research Center zaprzęgnięto do poszukiwania następców dla C i C++, a więc języków, które zarazem będą lekkie i sprawdzą się w niskopoziomowym kodzie, ale też będą bezpieczne w zakresie obsługi pamięci. Wybór padł na Rusta.
Wygląda jednak na to, że Microsoft tylko eksperymentalnie zaczął przepisywać na Rusta starsze, napisane w C, składniki Windowsa. Jak bowiem dowiadujemy się z wykładu pracującego dla Microsoftu Matthew Parkinsona, pod kryptonimem Verona kryją się prace nad całkowicie nowym językiem programowania wzorowanym w wielu aspektach na Ruście. Na razie nie ujawniono nazwy samego języka (w użyciu jest nazwa kodowa Verona), ale wiemy, że zostanie on udostępniony na wolnej licencji „wkrótce”. W przedsięwzięcie zaangażowany jest między innymi Mads Torgensen, który pracował nad rozwojem C#.
Jak twierdzi Parkinson, największe wyzwanie w rozwoju nowego rustopodobnego języka stanowi potencjalna mnogość jego zastosowań – musi się on bowiem sprawdzić nie tylko na oprogramowaniu desktopowym, ale także we wspomnianych niskopoziomowych komponentach systemu operacyjnego, w aplikacjach przeglądarkowych oraz w środowisku Azure. Ponadto o Veronie wiemy też, że znany z Rusta i związany z alokacją mechanizm ownership będzie mógł w nowym języku Microsoftu obejmować więcej niż jeden obiekt, a całemu przedsięwzięciu ma przyświecać założenie „programowania bezpiecznego infrastrukturalnie”.
Nowości zapowiadają się interesująco i wieloletniej perspektywie mogą mieć kolosalny wpływ na portfolio największego producenta oprogramowania na świecie. Warto przy tej okazji wspomnieć inne sukcesy w zakresie rozwoju języków programowania, jakie korporacja szefowana przez Satyę Nadellę odnosiła w ciągu ostatnich lat – mowa o TypeScripcie, który ze względu między innymi na statyczność typów i czytelną składnię zdobywa coraz większą popularność. Być może wkrótce Microsoft będzie miał równie dobrą propozycję w zakresie programowania niskopoziomowego.
Zobacz też: Czy Rust to nowe C? Przed językiem Mozilli maluje się świetlana przyszłość