Dopiero pół roku temu najbardziej krytyczne części powoli zaczęły być przepisywane na ten język i jak można było przewidzieć, problemy wydajnościowe przy naszym używaniu programu prawie nie występują.
Obecnie projekt ma ~50k linii w pythonie i ~10k linii w rust i szefostwo uznało, że najwyższy czas przepisać to na rusta, skoro tak dobrze się sprawdza i naprawi kilka pomniejszych błędów i oczywiście jako jeden z tych co zna ten język, znaczna część pracy przypada mnie.
Minusem jest to że jest od groma przy tym roboty na kilka miesięcy i być może to w 100% nie będzie to działało identycznie jak wcześniej(a powinno).
Plusem jest to że w końcu zaczynam się naprawdę uczyć tego języka - przy robieniu projektów dla zabawy nie musiałem zbytnio się przejmować stylem, a tutaj nie dość że trzeba pisać programy tak, by się samemu je rozumiało, to trzeba zrobić je tak by inni je zrozumieli - a rust czasami bywa trudnawy do zrozumienia.
#programowanie
#rustlang
@666 Któryś z imx, chyba w wersji 6 - akurat teraz nie mam możliwości sprawdzenia aktualnego modelu.
Używamy yocto, więc dodanie paczki z rustem, jest potwornie proste, bo wystarczy(zwykle) jedna paczka dla programu.
W pythonie dla każdej zależności, potrzebowaliśmy osobny plik bitbake co było nieprzyjemne.
Ramu jest chyba 2GB i korzystamy z std niemal wszędzie, więc to raczej jest główna różnica z stm32, na którym raczej trzeba oszczędzać każdą komórkę pamięci.
cross build --target armv7-unknown-linux-gnueabihf
w całości wystarcza by skompilować projekt, bez żadnych dodatkowych paczek i zmian unikalnych dla arm i ręcznie przesłać go na urządzenie, by tam go uruchomić.