| |
| 2.9, Аноним (9), 21:06, 29/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Интересно, во сколько раз при этом будет больше ошибок, чем в uutils?
| | |
|
| 1.2, Аноним (2), 20:33, 29/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– | |
Лучше производность, быстрее код писать, меньше оперативной памяти нужно и чуть больше места занимает.
Выбор очевиден.
| | |
| |
| 2.6, Аноним (6), 21:00, 29/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Быстрее код писать, воюя с чекером боровов? Ах да, для микроконтроллеров же - сплошной @unsafe.
| | |
| 2.15, Аноним (15), 21:24, 29/05/2026 [^] [^^] [^^^] [ответить]
| +4 +/– | |
> Быстрее код писать, воюя с чекером боровов?
Завязывайте позориться. Если у вас проблемы с БЧ при написании кода, значит вы не понимаете сколько у вас живут объекты и плодите UB, на сях с такой квалификацией вы будете вместо "войны с БЧ" который вас тыкает в проблему ещё до того как вы даже код собрали, сидеть неделями в отладчике.
> Ах да, для микроконтроллеров же - сплошной @unsafe
Ни на йоту не больше чем в программировании под большие машины - там у вас в unsafe обёрнуты обращения к системным вызовам, а тут к портам. В остальном разницы нет, поверх этого можете писать только safe логику, можете пользоваться штуками использующими unsafe под капотом для эффективности, но эти штуки опциональны и одинаковы на любых платформах.
| | |
|
| 1.3, НяшМяш (ok), 20:33, 29/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
Под микроконтроллер в 160 мегагерц можно было хоть на бидоне писать, в чём смысл делать какие-то сравнения под эту лошадь. Сообщество на тот же 16-мегагерцовый nRF51 на embassy фигачит со свистом уже много лет, открыли они Америку.
| | |
| |
| |
| 3.14, Аноним (14), 21:19, 29/05/2026 [^] [^^] [^^^] [ответить]
| –2 +/– |
Низкоуровневый питон называется forth. Это низкоуровневый сишарп.
| | |
|
|
| 1.8, Аноним (6), 21:05, 29/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +5 +/– |
Что-то мне кажется, что если для микроконтроллеров писать на Algol68 с POSIX-расширениями (ga68), то тоже производительность будет не сильно отличаться.
| | |
| |
| 2.20, Аноним (15), 21:44, 29/05/2026 [^] [^^] [^^^] [ответить] | +/– | Это скорее правда Под железо без изысков типа всяких SIMD компилировать чисту... большой текст свёрнут, показать | | |
| |
| 3.47, anonymous (??), 01:52, 30/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Особенно будет весело, когда ваш раст захочет сделать прерывание (для await) в контексте с заблокированными перываниями...
| | |
|
|
| 1.10, Аноним (15), 21:07, 29/05/2026 [ответить] [﹢﹢﹢] [ · · · ] | +1 +/– | В эмбедном байтодрочестве rust равных нет уже за счёт упаковки структур и нишево... большой текст свёрнут, показать | | |
| |
| 2.12, Аноним (12), 21:14, 29/05/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ничего интересного в этом нет. Вопрос применения раста в плоскости практического применения вообще не лежит.
| | |
| |
| 3.16, Аноним (15), 21:25, 29/05/2026 [^] [^^] [^^^] [ответить]
| –1 +/– |
Какой интересный тейк. Даже интересно в какой плоскости лежит вопрос применения если не в плоскости применения.
| | |
| |
| 4.19, анонимс (?), 21:36, 29/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Идеологическом. Rust компилируется LLVM написанным на C++ бэкэндом rustc так что машинный код совершенно одинаков
| | |
| |
| 5.21, Аноним (15), 21:48, 29/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Машинный код одинаков только если писать на общем подмножестве двух языков, на нахрена это кому-то нужно? На rust можно писать на порядок выразительнее, и ответ на вопрос будет ли полученный код компактнее и быстрее не для всех очевиден, а даже без учёта этого, вопросы компайл-тайм проверок и более качественного тулинга - сугубо практические.
| | |
| |
| 6.41, Аноним (40), 01:00, 30/05/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> На rust можно писать на порядок выразительнее
Тогда вы выбрали не тот язык. На порядок выразительнее писать на языке из 2000ых (а автор раста начал разрабатывать его в начале 2000ых) с синтаксисом из языков 80ых (для сравнение python это начало 90ых) вряд ли получится.
| | |
|
|
|
|
| 2.18, Сладкая булочка (?), 21:32, 29/05/2026 [^] [^^] [^^^] [ответить]
| +2 +/– | |
> (и юнит тесты рядом с кодом очень удобная штука)
В си никто не мешает положить тесты рядом с кодом.
| | |
| |
| 3.22, Аноним (15), 21:53, 29/05/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
Тесты рядом с кодом это, если что так и ни строчкой больше, даже если это первый тест в проекте:
'''
fn inc(a: u32) -> u32 {
a + 1
}
+#[test]
+fn test_inc() {
+ assert_eq!(inc(1), 2);
+}
'''
| | |
| |
| 4.26, Аноним (9), 22:34, 29/05/2026 [^] [^^] [^^^] [ответить]
| –1 +/– |
И что тут такого особенного, чего не было нигде в других языках?
| | |
|
|
| 2.28, Аноним83 (?), 22:44, 29/05/2026 [^] [^^] [^^^] [ответить]
| +1 +/– | |
> писать на нём в C/плюсовом стиле, то и результаты будут примерно такими же. Вот было бы гораздо интереснее сравнить rust с C/плюсовым стилем и идиоматический rust с Option, Result, итераторами, монадическими конструкциями, лямбдами и трейтами, а желательно с ещё более высокоуровневыми штуками типа разбора протоколов через serde или хотя бы nom.
Столько буков и ни слова о конечном результате, только какие то бесполезные языковые абстракции.
> А давний опыт в эмбеддовке (AVR) показал что на полноценном C++ со всякими 'unique_ptr', '<algorithm>' и повсеместными шаблонами (когда разные реализации таймеров и экранчиков прокидываются как шаблонные аргументы, реализация I2C мокается для тестов и т.д.) получает прошивки компактнее дубового сишного кода, после чего про C в нашеё команде вообще забыли.
Потому что видимо на С не пробовали даже делать плагины и абстракции, как оно сделано в том же линухе/бсд в дровах для всего того же самого.
| | |
|
| 1.35, localhostadmin (ok), 00:06, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Сейчас далеко не под все контроллеры можно сишный код собрать. Поэтому я слабо представляю, как в такую нишу ещё и раст запихнуть можно
| | |
| |
| 2.37, Аноним (37), 00:09, 30/05/2026 [^] [^^] [^^^] [ответить]
| +4 +/– |
Если в микроконтроллер залазит Rust, то это уже не микроконтроллер.
| | |
| |
| 3.46, Аноним (46), 01:50, 30/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Машкод на Rust весит примерно столько же сколько аналогичный код на C. Можно было бы и под AVR'ки писать, но вроде поддержки в llvm нет. Но в любом случае AVR'ки уже отмерли, микроконтроллеры сейчас поголовно такие что туда и микропитон влезет, но rust и приятнее, и эффективнее.
| | |
|
|
| 1.36, Аноним (37), 00:07, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– | |
"Тестирование выполненной работы не выявило заметных преимуществ в использовании языка Rust вместо C"
Поправил
| | |
| 1.38, Аноним (37), 00:16, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– | |
>В пакетном менеджере Cargo устранена уязвимость
С каждой новой версией Rust всё усложняется, расширяется, а значит программирование на нём становится менее надёжным.
А Cи остаётся таким же простым.
| | |
| 1.39, Аноним (39), 00:27, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Авторы исследования забыли указать, что сишники в эмбедовке разбираются в шинах данных, iommu, dma и тд. А эти на расте ни в чем не разбираются. Так что все-таки сишка под МК лучше уже хотя бы поэтому.
| | |
| |
| 2.43, Я (??), 01:06, 30/05/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Плюс на Си куча отлаженного и переносимого кода под любую платформу.
| | |
|
| 1.44, Аноним (44), 01:08, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
У меня совершенно другой вопрос соберется ли этот же код на расте спустя года 3... У раста до сих пор нет стейбл версии и на обратную совместимость они тоже положили, так что такое.
| | |
| |
| 2.50, Аноним (46), 01:56, 30/05/2026 [^] [^^] [^^^] [ответить]
| +/– |
Пару месяцев назад я столкнулся с кодом написанным во времена rust 1.0x, он вполне себе собирается. Собственно со стабильностью там всё в порядке.
| | |
|
| 1.45, Аноним (44), 01:10, 30/05/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Одного не пойму, зачем изобретать новый яп, привинтите к си все те же безопасные указатели да проверки....
| | |
| |
| 2.48, Аноним (46), 01:53, 30/05/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Чтобы это понять, надо программировать, а если вы не программируете, вам зачем это понимание?
> привинтите к си все те же безопасные указатели да проверки
Да, ещё лайфтаймы, БЧ, нормальную систему типов, экосистему, тулинг. Собственно Rust и получится. Ну или zig, если вам он ближе, правда в нём ничего этого нет и он экспериментальная поделка. В любом случае, без нового языка программирования не обойтись.
| | |
|
|