Сообщение Удобно ли писать на Rust? от 08.01.2023 16:46
Изменено 08.01.2023 16:47 Shmj
Удобно ли писать на Rust?
Вот взять модный нынче Rust, которые обещает стать убийцей С++.
У меня вопрос такой назрел: можно ли сделать переводчик программ C++ -> Rust? Понятно что одиночка не потянет, но вот если возьмётся корпорация и представит? Вот проснулись завтра — и тут тебе все говорят о новомодном переводчике, который любой код на C++ переводит в новомодный Rust. И тогда решается главная проблема — кодовая база.
Предлагаю прикинуть возможно ли это в принципе? И более важный вопрос — даже если смогут — удобнее ли писать на Rust?
Главная загогулина Rust-а описана на этом шаге: https://metanit.com/rust/tutorial/3.3.php
По сути это похоже на unique_ptr с доп. проверкой владения на уровне компиляции. Т.е. чтобы голову не морочить со сложной сборкой мусора — решили вообще отказаться от множественного владения — владелец всегда один. Решение Александра Македонского — болит голова — значит нужно ее отсечь.
Ну и далее идет борьба с ветряными мельницами — борьба с последствиями принятого решения. Придумали ссылки и изменяемые ссылки. Ну это ладно.
Самый смак начинается тут: https://metanit.com/rust/tutorial/6.1.php — установка времени жизни ссылки Я не до конца понял как это работает и почему компилятор все-же перекладывает ответственность по контролю на разработчика. Значит если я ошибусь — таки получу ошибку времени исполнения.
Как вы думаете — удобнее ли такая парадигма? Я вот не могу пока понять — нужно попробовать что-то написать на нем, а пока никто за это не платит — смысла нет.
У меня вопрос такой назрел: можно ли сделать переводчик программ C++ -> Rust? Понятно что одиночка не потянет, но вот если возьмётся корпорация и представит? Вот проснулись завтра — и тут тебе все говорят о новомодном переводчике, который любой код на C++ переводит в новомодный Rust. И тогда решается главная проблема — кодовая база.
Предлагаю прикинуть возможно ли это в принципе? И более важный вопрос — даже если смогут — удобнее ли писать на Rust?
Главная загогулина Rust-а описана на этом шаге: https://metanit.com/rust/tutorial/3.3.php
По сути это похоже на unique_ptr с доп. проверкой владения на уровне компиляции. Т.е. чтобы голову не морочить со сложной сборкой мусора — решили вообще отказаться от множественного владения — владелец всегда один. Решение Александра Македонского — болит голова — значит нужно ее отсечь.
Ну и далее идет борьба с ветряными мельницами — борьба с последствиями принятого решения. Придумали ссылки и изменяемые ссылки. Ну это ладно.
Самый смак начинается тут: https://metanit.com/rust/tutorial/6.1.php — установка времени жизни ссылки Я не до конца понял как это работает и почему компилятор все-же перекладывает ответственность по контролю на разработчика. Значит если я ошибусь — таки получу ошибку времени исполнения.
Как вы думаете — удобнее ли такая парадигма? Я вот не могу пока понять — нужно попробовать что-то написать на нем, а пока никто за это не платит — смысла нет.
Удобно ли писать на Rust?
Вот взять модный нынче Rust, которые обещает стать убийцей С++.
У меня вопрос такой назрел: можно ли сделать переводчик программ C++ -> Rust? Понятно что одиночка не потянет, но вот если возьмётся корпорация и представит? Вот проснулись завтра — и тут тебе все говорят о новомодном переводчике, который любой код на C++ переводит в новомодный Rust. И тогда решается главная проблема — кодовая база.
Предположим что такой переводчик написали — теперь нет проблемы кодовой базы, все библиотеки C++ 100% доступны на Rust.
Тогда возникает более важный вопрос — удобнее ли вообще писать на Rust?
Главная загогулина Rust-а описана на этом шаге: https://metanit.com/rust/tutorial/3.3.php
По сути это похоже на unique_ptr с доп. проверкой владения на уровне компиляции. Т.е. чтобы голову не морочить со сложной сборкой мусора — решили вообще отказаться от множественного владения — владелец всегда один. Решение Александра Македонского — болит голова — значит нужно ее отсечь.
Ну и далее идет борьба с ветряными мельницами — борьба с последствиями принятого решения. Придумали ссылки и изменяемые ссылки. Ну это ладно.
Самый смак начинается тут: https://metanit.com/rust/tutorial/6.1.php — установка времени жизни ссылки Я не до конца понял как это работает и почему компилятор все-же перекладывает ответственность по контролю на разработчика. Значит если я ошибусь — таки получу ошибку времени исполнения.
Как вы думаете — удобнее ли такая парадигма? Я вот не могу пока понять — нужно попробовать что-то написать на нем, а пока никто за это не платит — смысла нет.
У меня вопрос такой назрел: можно ли сделать переводчик программ C++ -> Rust? Понятно что одиночка не потянет, но вот если возьмётся корпорация и представит? Вот проснулись завтра — и тут тебе все говорят о новомодном переводчике, который любой код на C++ переводит в новомодный Rust. И тогда решается главная проблема — кодовая база.
Предположим что такой переводчик написали — теперь нет проблемы кодовой базы, все библиотеки C++ 100% доступны на Rust.
Тогда возникает более важный вопрос — удобнее ли вообще писать на Rust?
Главная загогулина Rust-а описана на этом шаге: https://metanit.com/rust/tutorial/3.3.php
По сути это похоже на unique_ptr с доп. проверкой владения на уровне компиляции. Т.е. чтобы голову не морочить со сложной сборкой мусора — решили вообще отказаться от множественного владения — владелец всегда один. Решение Александра Македонского — болит голова — значит нужно ее отсечь.
Ну и далее идет борьба с ветряными мельницами — борьба с последствиями принятого решения. Придумали ссылки и изменяемые ссылки. Ну это ладно.
Самый смак начинается тут: https://metanit.com/rust/tutorial/6.1.php — установка времени жизни ссылки Я не до конца понял как это работает и почему компилятор все-же перекладывает ответственность по контролю на разработчика. Значит если я ошибусь — таки получу ошибку времени исполнения.
Как вы думаете — удобнее ли такая парадигма? Я вот не могу пока понять — нужно попробовать что-то написать на нем, а пока никто за это не платит — смысла нет.