Peter Ammon, de leider van het team dat de interactieve commandoregelomgeving Fish ontwikkelt, heeft een plan gepubliceerd om de ontwikkeling van het project naar de programmeertaal Rust te vertalen. De shell zal niet vanaf nul worden herschreven, maar geleidelijk, module voor module, van C++ naar Rust worden overgezet. Volgens de ontwikkelaars van Fish zal het gebruik van Rust helpen om problemen met multithreading op te lossen, een modernere en kwalitatief betere foutdetectieomgeving te bieden, de veiligheid bij geheugengebruik te verbeteren en fouten zoals het toegang tot geheugen na vrijgave en bij het verwerken van strings, waarvoor Fish het type wchar_t gebruikt, te elimineren.
Er wordt opgemerkt dat de toolkit voor C++ als verouderd wordt beschouwd door de ontwikkelaars, en er zijn zorgen dat het moeilijker zal worden om nieuwe projectleden te vinden bij voortgezet gebruik van C++. Rust wordt gezien als een veelbelovende en actief groeiende taal met een levendige en groeiende gemeenschap, die al bekend is bij de huidige ontwikkelaars van Fish en in staat is om de bestaande problemen van het project op te lossen.
Tijdens de overgangsperiode zal de coexistence van C++- en Rust-code worden verzekerd door middel van FFI (Foreign Function Interface) bindings. Uiteindelijk is het de bedoeling om het project in de volgende belangrijke release volledig naar Rust te vertalen.
Bron: opennet.ru
