Borrow Checker можно сделать ( и сделаны ) и для С и для С++.
По факту Rust это не С который сделали более безопасным, а функциональный язык ML который сделали более быстрым, так как убрали типовую для функциональных языков сборку мусора и вместо нее добавили проверку владения.
Поэтому общий конвертор из C в Rust очень труден в разработке, так как C это низкоуровневый императивный язык, а Rust это высокоуровневый функциональный. Чтобы конвертировать из C в Rust надо как-то извлечь из низкоуровневого кода на C высокоуровневую идею которая в нем содержится и уже её сконвертировать в Rust. Собственно идею этого Tractor уже подвергли большому сомнению на профильных ресурсах.
no subject
Date: 2024-08-03 07:29 pm (UTC)Borrow Checker можно сделать ( и сделаны ) и для С и для С++.
По факту Rust это не С который сделали более безопасным, а функциональный язык ML который сделали более быстрым, так как убрали типовую для функциональных языков сборку мусора и вместо нее добавили проверку владения.
Поэтому общий конвертор из C в Rust очень труден в разработке, так как C это низкоуровневый императивный язык, а Rust это высокоуровневый функциональный. Чтобы конвертировать из C в Rust надо как-то извлечь из низкоуровневого кода на C высокоуровневую идею которая в нем содержится и уже её сконвертировать в Rust. Собственно идею этого Tractor уже подвергли большому сомнению на профильных ресурсах.