The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Rust 1.71 "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Rust 1.71 "  +/
Сообщение от opennews (??), 14-Июл-23, 12:50 
Опубликован релиз языка программирования общего назначения Rust 1.71, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки)...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=59438

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск языка программирования Rust 1.71 "  +20 +/
Сообщение от Аноним (1), 14-Июл-23, 12:50 
С замиранием сердца жду Раст 2.0, где наконец-то рискнут усложнить синтаксис.
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск языка программирования Rust 1.71 "  +16 +/
Сообщение от Иван Петроу (?), 14-Июл-23, 14:25 
Ну да, такой сложный и непонятный синтаксис, все эти дженерики...иное дело кастовать void* - вот это действительно просто и понятно, а главное негде ошибиться, нужно просто аккуратно писать код, без багов
Ответить | Правка | Наверх | Cообщить модератору

74. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Витюшка (?), 14-Июл-23, 15:33 
Посмотри как это сделано в Zig и вопросов не будет. Там нет проблем ни с covariance/etc.

Типы как first-class citizen. Проверяй что хочешь и как хочешь.

Ответить | Правка | Наверх | Cообщить модератору

93. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Аноним (93), 14-Июл-23, 16:39 
Не надо никого ждать - возьми D и пиши! ТАМ ЕСТЬ ВСЁ.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

107. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Cooler (??), 14-Июл-23, 18:29 
Там нет захвата в лямбда "по значению".
Ответить | Правка | Наверх | Cообщить модератору

176. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (176), 15-Июл-23, 06:20 
Всё есть и всё захватывается только в SPARK: https://learn.adacore.com/courses/intro-to-spark/index.html
Ответить | Правка | Наверх | Cообщить модератору

108. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Прохожий (??), 14-Июл-23, 18:32 
Только те, которые с ним работали (работают), почему-то жалуются на нестабильность и подолгу неисправляемые баги. Здесь, на этом сайте часто о таком читал.
Ответить | Правка | К родителю #93 | Наверх | Cообщить модератору

159. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (159), 14-Июл-23, 22:43 
А наскольео тут писавшим можно доверять?
Ответить | Правка | Наверх | Cообщить модератору

162. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (162), 14-Июл-23, 23:28 
А насколько можно доверять утверждению: "Возьми D и пиши! ТАМ ЕСТЬ ВСЁ." ?
Ответить | Правка | Наверх | Cообщить модератору

163. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонин (?), 14-Июл-23, 23:31 
Абсолютно нельзя доверять!
Но можно напр. зайти в багтрекер d-lang и посмотреть, что там творится.
https://issues.dlang.org/buglist.cgi?component=druntime&orde...---
https://issues.dlang.org/buglist.cgi?component=dlang.org&ord...---

Целая пачка багов еще из прошлого десятилетия.
Насколько они критичны... ну, это каждый сам решит. Но выглядит так себе.

Ответить | Правка | К родителю #159 | Наверх | Cообщить модератору

209. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Hck3r (?), 15-Июл-23, 16:30 
Как будто бы в других крупных проектах такого нет, лол
Ответить | Правка | Наверх | Cообщить модератору

167. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от freehckemail (ok), 15-Июл-23, 01:03 
> А наскольео тут писавшим можно доверять?

Анонимам в принципе нельзя доверять. Местным -- особенно нельзя.

Ответить | Правка | К родителю #159 | Наверх | Cообщить модератору

218. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (218), 15-Июл-23, 19:42 
Ну нет, анонимы не обманывают, в отличие от регистрантов. А в случае с сабжем, имеет смысл верить любой негативной дичи. Скорее всего, это правда, и даже не гипертрофированная. Я сам в этом убеждался. Другое дело, что не со всем легко столкнёшься, но, всегда стоит учитывать, что вероятность имеется.
Ответить | Правка | Наверх | Cообщить модератору

95. "Выпуск языка программирования Rust 1.71 "  –2 +/
Сообщение от Аноним (95), 14-Июл-23, 16:45 
синтаксис раста и так постоянно усложняют, в результате чего большая часть проектов собирается исключительно на найтли.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

103. Скрыто модератором  –1 +/
Сообщение от Аноним (-), 14-Июл-23, 18:04 
Ответить | Правка | Наверх | Cообщить модератору

140. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Прохожий (??), 14-Июл-23, 20:40 
Какая связь между усложнением синтаксиса (которого на самом деле нет) и сборкой проектов на бета-версиях компилятора?
Ответить | Правка | К родителю #95 | Наверх | Cообщить модератору

170. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Rustoman (?), 15-Июл-23, 04:12 
Тут связь обратной должна быть, из-за простоты и невыразительности синтаксиса приходится на найдтли компилить
Ответить | Правка | Наверх | Cообщить модератору

139. "Выпуск языка программирования Rust 1.71 "  +4 +/
Сообщение от Прохожий (??), 14-Июл-23, 20:38 
Для таких, как ты, придумали C++. Спецификация на примерно 1000 страниц, UB, выборочная поддержка стандартов компиляторами. Всё, как ты любишь.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

145. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (145), 14-Июл-23, 21:07 
кто ж виноват, что очередной васян, считающий себя гением, лезе чтобы добавить новых конструкций в язык, раздувая спецификацию
Ответить | Правка | Наверх | Cообщить модератору

149. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 21:33 
Тогда уж "очередные васяны" ( Спецификация коллективный продукт.
Ответить | Правка | Наверх | Cообщить модератору

190. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (190), 15-Июл-23, 11:31 
А спецификация для Rust сколько страниц?
Ответить | Правка | К родителю #139 | Наверх | Cообщить модератору

203. "Выпуск языка программирования Rust 1.71 "  +4 +/
Сообщение от Аноним (203), 15-Июл-23, 14:41 
У раст вообще нет спецификации.
Ответить | Правка | Наверх | Cообщить модератору

253. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Neon (??), 16-Июл-23, 03:49 
Т.е. правая рука не знает, что делает левая ?)))
Ответить | Правка | Наверх | Cообщить модератору

281. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 17:17 
То есть у Rust есть RFC. Это то же по сути, что и спецификация - разработчики GCC, которые, вроде, пилят альтернативный компилятор Rust, не дадут соврать. Только более динамичное, не такое анально отгороженное от общественности, как спецификация Плюсов, и к тому же бесплатное.
Ответить | Правка | Наверх | Cообщить модератору

276. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимитатор (?), 16-Июл-23, 15:09 
Версии 2.0 никогда не будет, успокойтесь.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

300. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Серб (ok), 17-Июл-23, 13:59 
С чего ты взял?

А если добавить отслеживание владений для коллекций объектов?

Ответить | Правка | Наверх | Cообщить модератору

2. Скрыто модератором  +13 +/
Сообщение от 12yoexpert (ok), 14-Июл-23, 12:52 
Ответить | Правка | Наверх | Cообщить модератору

5. Скрыто модератором  +6 +/
Сообщение от Аноним (5), 14-Июл-23, 13:08 
Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск языка программирования Rust 1.71 "  –4 +/
Сообщение от frac (?), 14-Июл-23, 13:11 
Да ну, прошлый релиз был месяц назад.
Опять маркетологи подсказали, что цифирька в версии придает уверенности и зрелости?
слишком часто для "самого" безопасного ЯП, там изменения прошлой версии еще по-критиковать не успели, а тут выкатывают новую.
На лицо замазывание дыр и сомнений по средством гонки релизов.
Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск языка программирования Rust 1.71 "  +11 +/
Сообщение от Аноним (22), 14-Июл-23, 13:39 
> по-критиковать
> На лицо
> по средством

Садись, два.

Ответить | Правка | Наверх | Cообщить модератору

40. "Выпуск языка программирования Rust 1.71 "  –7 +/
Сообщение от frac (?), 14-Июл-23, 14:17 
согласен, не перечитывал и в угоду быстроте публикации коммента подзабил на грамотность. в интернетах почему то стало привычкой
Ответить | Правка | Наверх | Cообщить модератору

76. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (76), 14-Июл-23, 15:40 
blazing fast commenting
Ответить | Правка | Наверх | Cообщить модератору

100. "Выпуск языка программирования Rust 1.71 "  +8 +/
Сообщение от Аноним (100), 14-Июл-23, 17:49 
> почему то

почему-то

Ответить | Правка | К родителю #40 | Наверх | Cообщить модератору

46. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 14:21 
хотя вот "по_средством" стало таким случайно при нажатии С.
Недавно сам журил за это слово, а тут вон оно как бывает забавно палец жмяк на две клавиши и на тебе
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

310. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (310), 19-Июл-23, 06:36 
За отсутствием аргументов хотя бы ошибки поискал у человека, правда? В тапки не забудь нагадить ещё и подлокотник подрапать. =)
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

23. "Выпуск языка программирования Rust 1.71 "  +8 +/
Сообщение от Анонин (?), 14-Июл-23, 13:40 
Не месяц, а 6 недель назад. https://blog.rust-lang.org/2023/06/01/Rust-1.70.0.html
У них просто 6-week release cycle. А не потому что они хотят чтобы у опеннетчиков горело каждые 6 недель.

> там изменения прошлой версии еще по-критиковать не успели

Еще не остыло?)

> На лицо замазывание дыр и сомнений по средством гонки релизов.

Нет, в релиз попадает что успели сделать и протестировать.
Некоторые вещи переносятся на более дальний срок, а некоторые поближе.

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

58. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Пушок (?), 14-Июл-23, 14:57 
Ну зачем ты врёшь, вводишь опеннет в заблуждение? Зачем хочешь скрыть, что раст навязывают корпорации? Думаешь, стоящая за ним, армия маркетологов незаметна? Маркетологи добавили в Rust code of conduct! Для смузихлёбов. Их нанимают корпорации, чтобы было дёшево, а они глупые, не могут писать. Раст помогает им джейсоны перекладывать. Я, кстати, пишу на Bash и часто бываю в комментариях opennet. Спасибо. Но врать это ты брось. Раст в комментариях уже не раз обсуждали, всё с ним понятно. Опеннет не проведёшь.
Ответить | Правка | Наверх | Cообщить модератору

90. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (93), 14-Июл-23, 16:34 
+1. Такого навязчивого просовывания языка во все щели я ещё не видел! Даже MS с его C# намного скромнее  себя вела - объявила, мол, есть C#, есть WinForms, можно писать. И грабить корованы. И ВСЁ! Народ побежал писать.
С растом и так сунут, и так припудрят, и здесь блёстками посыпят, но .... никому это г___но не нужно!
Ответить | Правка | Наверх | Cообщить модератору

109. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Прохожий (??), 14-Июл-23, 18:38 
> никому это г___но не нужно

Никому из людей с заведомо недоразвитыми когнитивными способностями (по очевидным причинам). Так точнее будет, пожалуй.

А в чём навязчивость, кстати? OpenNET - свободный ресурс. Кто что хочет, тот то и публикует. Даже ты можешь какую-то новость запулить. Также тебя никто не заставляет читать новости про Rust, не правда ли?

Ответить | Правка | Наверх | Cообщить модератору

256. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Neon (??), 16-Июл-23, 04:22 
Ну да, целая секта бегает и орет на всех углах про чудесный раст. И волосы от него станут густее и шелковистее.))) Очень навязчивая реклама Раста уже достала
Ответить | Правка | Наверх | Cообщить модератору

268. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:16 
Ты перестань вещества употреблять разные, глядишь, и "целая секта" исчезнет из твоей головы. Мне вот, кроме статей на Опеннете нигде эта информация больше и не встречается почему-то. Тем более, реклама.
Ответить | Правка | Наверх | Cообщить модератору

206. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (206), 15-Июл-23, 15:40 
> Такого навязчивого просовывания языка во все щели я ещё не видел!

Это наверное потому, что си/плюсы со своими ошибками достали тех, кому на совесть "работу работать" надо и кому надо чтобы всё работало немного надежнее.

> но .... никому это г___но не нужно!

Да, тебе, который никто, которому нужен только ютубчик или фильм глянуть да ценный коммент на опеннете написать, это не нужно. Нужно тому, кто хочет, чтобы его программы и сервисы работали надежнее и безопаснее.

Ответить | Правка | К родителю #90 | Наверх | Cообщить модератору

255. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Neon (??), 16-Июл-23, 04:21 
С/С++ может быть и достали, но кроме раста есть еще множество других путей, но что то носятся и суют во все щели в качестве серебряной пули именно раст
Ответить | Правка | Наверх | Cообщить модератору

263. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Анонин (?), 16-Июл-23, 11:55 
Это какие еще пути для сишечки? Давайте, перечислите.
Если они есть, то почему до сих пор нереализованно?

Вы считаете что нормально что в ядре дыра для получение рута, потому что нешмогли посчитать размер массива, живет с 2014 года (https://www.opennet.me/opennews/art.shtml?num=59409)?
Ну а кто-то посчитал, что это не нормально и начал писать на расте.
Ваши "аргументы" напоминает мем с жирным котом "я тоже так могу, просто не хочу".
Не в состоянии современный сишник писать без багов по памяти на большом проекте.

> в качестве серебряной пули

Раст не серебряная пуля. Он должен решить только одну проблему - проблемы с памятью.
Остальные плюсы вторичны, просто потому что современный язык с нормальной системой типов.

Ответить | Правка | Наверх | Cообщить модератору

301. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от anonymmm (?), 17-Июл-23, 14:18 
Анализаторы, верификаторы, модел чекеры, генерация кода из языков с доказанной корректностью алгоритма.

для си есть всё что нужно, можно делать корректно не только для памяти, а для чего угодно, никаких ограничений.

в Linux ядре в некоторых местах есть например части, описанные на promela, чтобы не зависало.

может там какое-то улучшение работы с памятью и можно добиться с помощью rust, но и с помощью си это можно сделать, только надо использовать дополнительные инструменты.

Ответить | Правка | Наверх | Cообщить модератору

254. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Neon (??), 16-Июл-23, 04:20 
+1 Армии маркетологов носятся с очередной серебряной пулей. Так они разве что с Java носились. Типа решение всех проблем. И это при том что, виртуальная машина была еще в древнем Паскале с его p кодом
Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

92. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (93), 14-Июл-23, 16:38 
> А не потому что они хотят чтобы у опеннетчиков горело каждые 6 недель.

Не факт :) Как раз "частые релизы" позволяют корпорастам создавать в инфополе видимость "всем нужен раст". Хотя ДЛЯ ЯЗЫКА(!) такая скорость релизов крайне частая. Ну нельзя спроектировать и написать язык, беспрестанно выкатывая "а мы вот тут скобочки добавили!". Это говорит о незрелости языка и главное - о его ненужности, потому что НОРМАЛЬНЫЙ язык "пропихивать" не нужно - люди его сами юзают! Даже, прости господи, С++ при всех его недостатках и неуклюжем синтаксисе выбирается добровольно. Раст - суют и в рот и в зад и всё равно погромизды не хотят вешать на себя двойную работу по слежению за указателями!

Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

96. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Аноним (96), 14-Июл-23, 16:53 
Молодежь не помнит как пропихивали с++ вместо сишечки))
Очень жаль что тебе в зад засунули раст, это ооочень печально)
Ответить | Правка | Наверх | Cообщить модератору

192. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (-), 15-Июл-23, 12:14 
>Молодежь не помнит как пропихивали с++ вместо сишечки))

А ты такой старый откуда появился? Я не помню чтобы Си плюс-плюс кто-то проприхивал. Жабу, да пропихивали.

Ответить | Правка | Наверх | Cообщить модератору

121. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Прохожий (??), 14-Июл-23, 19:12 
> Как раз "частые релизы" позволяют корпорастам создавать в инфополе видимость "всем нужен раст".

Частые релизы позволяют быстрее исправлять накопившиеся ошибки, быстрее тестировать и стабилизировать новые возможности, быстрее и безболезненнее адаптироваться к небольшим, но частым изменениям.

> Хотя ДЛЯ ЯЗЫКА(!) такая скорость релизов крайне частая.

Ты хоть один язык создал, чтобы делать подобные утверждения или просто мнение имеешь? Я ещё готов согласиться, что лет 30-40 назад такое положение дел было в норме, язык годами создавался, а потом десятилетиями вылизывался. Но сейчас-то, при такое обширной теоретической базе знаний в области программирования вообще и компиляторостроения в частности...

> Это говорит о незрелости языка

Ни один из известных языков нельзя считать зрелым в абсолютном смысле этого слова. И знаешь почему? Нет предела совершенству, потому что.

> и главное - о его ненужности

А парни из Гугл, Микрософт и других спонсоров Rust и не догадываются об этом. Вот же дураки, да? 😂

> потому что НОРМАЛЬНЫЙ язык "пропихивать" не нужно - люди его сами юзают!

Дык ведь и юзают. Те, кто смог осилить.

> Даже, прости господи, С++ при всех его недостатках и неуклюжем синтаксисе выбирается добровольно.

Где в наши дни он выбирается добровольно? На каких таких НОВЫХ проектах это угpёбище со спецификацией из 1000 страниц, которую не способен полностью осилить ни один человек на планете, с UB, с неполноценной поддержкой стандартов в разных компиляторах, выбирают добровольно?

Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

166. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (76), 14-Июл-23, 23:42 
Со всем согласен кроме последнего пункта - в геймдеве пока еще раст даже близко не конкурент плюсам. Но надеюсь и тут скоро будут анрил потеснится, надо движкам немного настояться и обрасти редакторами и тулингом.
Ответить | Правка | Наверх | Cообщить модератору

246. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 01:50 
Unreal engine - это всё-таки не НОВЫЙ проект.
Ответить | Правка | Наверх | Cообщить модератору

193. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (-), 15-Июл-23, 12:18 
>А парни из Гугл, Микрософт и других спонсоров Rust и не догадываются об этом. Вот же дураки, да? 😂

А к чему весь этот сарказм а? Тебе нравится лизать зад корпорастам? Те кто за Свободу не будут писать на Расте?

Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

223. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (223), 15-Июл-23, 21:48 
> А к чему весь этот сарказм а? Тебе нравится лизать зад корпорастам?

https://isocpp.org/std/the-committee
> Convener: Herb SProject
> Editor: Thomas Köppe (Google)utter (Microsoft).

https://gcc.gnu.org/steering.html
> David Edelsohn (IBM)
> Ian Lance Taylor (Google)

Ты пишешь на фрипаскале или опять "вынипонимаитиэтодругое!"?


Ответить | Правка | Наверх | Cообщить модератору

245. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 01:48 
Мне плевать, где работают квалифицированные программисты. Для меня главное это то, что они грамотные умные ребята. Идиотов туда не берут, очень жёсткая конкуренция потому что.
Ответить | Правка | К родителю #193 | Наверх | Cообщить модератору

249. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 02:08 
Тут намек что в Rust прежде всего заинтересованы корпорации, потому что он резко усиливает контроль над качеством кода. Сишник начинает мыслить по другому. На себе проверено )
Ответить | Правка | Наверх | Cообщить модератору

269. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:28 
В скорейшем повсеместном внедрении Rust вместо Си прежде всего заинтересованы конечные пользователи. Потому что количество ошибок в конечном коде существенно уменьшается - несколько независимых друг от друга источников это подтверждают. А кто там пишет/поддерживает этот код - корпорации, или отдельные Васяны - уже совершенно неважно. Осозннанные разработчики (повторю специально это слово - осознанные, то есть, понимающие последствия своих ошибок в коде) тоже должны быть заинтересованы в Rust (или любом подобном языке).
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от анонимус (??), 14-Июл-23, 14:17 
> прошлый релиз был месяц назад

слегка больше но не суть
так ведь получается отличный график!

1.5 месяца читаем про дыряшку, найденные уязвимости и глумимся над дидами, которые так и не научились не выходить за пределы массива или делать фри не больше 1 раза

а потом выходит новость про новый выпуск языка и можно сделать перепись неолуддитов и обиженных неосиляторов

Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

50. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 14:26 
ну если по вашему, то может и сесть смысл
в статистике неосиляторства, может быть больше смысла чем в похвале адептов.
интересная мысль у вас, надо обдумать.
Ответить | Правка | Наверх | Cообщить модератору

8. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (8), 14-Июл-23, 13:20 
Отличный язык! Позволяет безопасно работать с памятью!
Ответить | Правка | Наверх | Cообщить модератору

11. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 13:23 
чем докажешь?
Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 13:33 
Ответ прост: боров-чекер. У сишки его нет.
Ответить | Правка | Наверх | Cообщить модератору

37. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от frac (?), 14-Июл-23, 14:13 
что мешает улучшать сишку?
что мешает писать на сишке с учетом недостатков?

вы не подумайте, я не против этого раста, мне ненравится возведение его в абсолют с последующим навязыванием мнения меньшинства адептов раста всему сообществу и индустрии.

Ответить | Правка | Наверх | Cообщить модератору

48. "Выпуск языка программирования Rust 1.71 "  +8 +/
Сообщение от Анонин (?), 14-Июл-23, 14:23 
> что мешает улучшать сишку?

Обратная совместимость

> что мешает писать на сишке с учетом недостатков?

Скорее всего это просто невозможно. Сишка такая как она есть. Можно из нее сделать какое-то безопасное подмножество, но это будет другой язык с си-синтаксисом.

Ответить | Правка | Наверх | Cообщить модератору

66. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (66), 14-Июл-23, 15:20 
>Сишка такая как она есть. Можно из нее сделать какое-то безопасное подмножество, но это будет другой язык с си-синтаксисом.

Уже пытались. Это языки Си плас-плас, Циклон, Обджект Си, Жаба.

Ответить | Правка | Наверх | Cообщить модератору

165. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (162), 14-Июл-23, 23:42 
Чтобы не ходить далеко предлагаю здесь примерно описать как Вы будите реализовывать "макроса thread_local," из статьи в синтаксисе С. Для справки это макрос который реализует поток со своими данными, легко вызывается как метод статического типа с конструктором и лямбдой.  
Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

54. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Пушок (?), 14-Июл-23, 14:46 
>что мешает писать на сишке с учетом недостатков?

Ничто не мешает, но зачем? Деды хорошей жизни не видели и поэтому им норм было ifndef-ы руками расставлять, и убогая система типов норм была, но мы-то уже видели хорошую жизнь! И опыт накопили, и новые знания появились.

Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

67. Скрыто модератором  +/
Сообщение от Аноним (67), 14-Июл-23, 15:21 
Ответить | Правка | Наверх | Cообщить модератору

79. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от anonistemail (?), 14-Июл-23, 15:57 
object-c?
Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

91. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (91), 14-Июл-23, 16:35 
Изучи в свободное время модули в C++, а затем посмотри на поддержку в компиляторах (её нет, это тяжёлая задача - идти против языка, использующего заголовочные файлы). Легаси мешает очень сильно.
Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

39. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (39), 14-Июл-23, 14:16 
Боров привязывается на изи только он всех бесит потому им никто не пользуется.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

123. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 14-Июл-23, 19:15 
Отучаемся говорить за всех. Ты не пользуешься. Но, скорей всего, твой софт никому не нужен.
Ответить | Правка | Наверх | Cообщить модератору

126. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (162), 14-Июл-23, 19:24 
Значит Вы неправильно работаете с памятью. В си у Вас будут ошибки, которые Вы скроете (си доброжелателен). но они вылезут в рантайме и будут обнаружены в CVE.
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

124. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:18 
> чем докажешь?

Вы работали в Раст? Или Вам напели или слышали артиста в хоре?

Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

13. "Выпуск языка программирования Rust 1.71 "  –2 +/
Сообщение от frac (?), 14-Июл-23, 13:28 
Если отличный в смысле отличается, то да, действительно.
если безопасно работать с памятью, то откуда все это берут, если софта написанного на этом толком нет.
Давайте подождем чего нибудь критически важное на этом языке и тогда если интернет не будет пестрить новостями о дырах будем хвалить.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

16. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Пушок (?), 14-Июл-23, 13:33 
А почему ты затрясся весь?
Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 13:50 
напротив, спокоен и критическое мышление в состоянии ВКЛ.
вокруг все излишне рады и восторжены этим растом как некой панацеей.
Ответить | Правка | Наверх | Cообщить модератору

38. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 14-Июл-23, 14:15 
Конечно рады! Мясные мешки до сих пор не научились работать с памятью. Причем там правила просто элементарные, просто нужно быть внимательным. Внимательным на паре сотен тысяч строк кода, ничего сложного))
И это прекрасно видно по количеству, а главное видам дырений в ядре и других сишных проектах.
Поэтому возможно переложить эту рутину на компилятор - это просто прекрасное решение.
Ответить | Правка | Наверх | Cообщить модератору

42. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (39), 14-Июл-23, 14:18 
А толку если ты точно такой же мешок не в состоянии управляется с кодом на сотни тысяч строк на расте.
Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 14-Июл-23, 14:20 
Толк в том, что оно тебе просто не позволит скомпилировать такой код без использования unsafe.
И код не попадет в прод, к юзерам и тд.
Ответить | Правка | Наверх | Cообщить модератору

53. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 14:33 
что мешает слелать компилятор для сишки таким же надоедливым? пусть мигает светодиодом красным и окошко рисует с unsafe, не пускает готовое в папку "готовое"
Ответить | Правка | Наверх | Cообщить модератору

56. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Анонимусс (?), 14-Июл-23, 14:50 
В теории можно. Но это очень большая работа в самом компиляторе.
Плюс будет проблема в подходах. Оно будет ругаться просто на вызовы функций или порядок вызовов из-за владения (ownership). Т.е. придется писать код на си "по-другому".
А старый код не будет компилироваться на новом компиляторе.
В обратную сторону оно наверное будет работать - си-код с учетом ownership будет компилироваться обычными компиляторами.

Если действительно интересно - вот пример как переписывают относительно небольшой и простой код с си на раст, вначале просто "наивно", а потом уже идиоматически правильно.
https://cliffle.com/p/dangerust/

Ответить | Правка | Наверх | Cообщить модератору

62. "Выпуск языка программирования Rust 1.71 "  –3 +/
Сообщение от Аноним (62), 14-Июл-23, 15:16 
есть же раст. ах, да, ты же не осилишь
Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

127. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:30 
> что мешает слелать компилятор для сишки таким же надоедливым?

Вы еще ассемблер предложите сделать таким же. ) Си близок к ассемблеру и доброжелателен. Это его ниша.
Еще раз вопрос Вы работали в Rust? Изучили синтаксические конструкции Rust и C. Изучили систему типов? Я думаю, что нет. Иначе не выдвигали бы такие идеи.

Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

134. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 14-Июл-23, 20:13 
Это как из Жигули пытаться сделать Лотус. Оно-то возможно (ТВ шоу "Топ Гир" не даст соврать), но зачем, если уже есть Лотус?
Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

17. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 13:35 
> софта написанного на этом толком нет

Есть, просто ты не догадался погуглить.

Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

27. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 13:44 
критически важный? от и до написанный на раст?
пару строк в большом проекте не надо считать
Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 13:47 
> критически важный?

Чувак, у тебя раст без пяти минут в ядре окажется, если уже не. Насколько это критично?

> от и до написанный на раст?

Чувак, у тебя даже ядро не написано на сишке "от и до". Есть ассемблерные вставки? Всё, проект не "от и до". Так что у тебя просто moving goalpost syndrome (загугли).

Ответить | Правка | Наверх | Cообщить модератору

35. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от frac (?), 14-Июл-23, 14:07 
Вы уважаемый тот еще диверсант. не хочу с вами спорить, время покажет и рассудит.
Не надо эту "moving goalpost syndrome" американщину тем более лженаучную,в пример приводить.
Есть понятие софизм. Есть несколько видов софизмов в споре 1. отступление от задачи спора 2. отступления от тезиса.

Любое из них есть неуважение к собеседнику и наблюдателям за спором. Продолжать такое - себя не уважать.

Ответить | Правка | Наверх | Cообщить модератору

52. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от анонимус (??), 14-Июл-23, 14:30 
э... а почему ты думаешь, что тебя кто-то здесь уважает?
как и наблюдателей за спором?
разве на пенек анонимы за уважением приходят

Dropbox - движок синка файлов (они сами хвастались в своем блоге)
Ruffle - спасибо, могу поиграть в флеш игры из детства
Tauri - довольно неплохой ui

> американщину тем более лженаучную

вообще то это British, но не важно (хотя показывает твои глупочайшие познания)
а важно то что и линукс, и компы как они сейчас есть, и даже rust это продукт той самой американщины)

Ответить | Правка | Наверх | Cообщить модератору

59. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (59), 14-Июл-23, 15:04 
В копилочку проектов ещё Pingora и половина серверного бекенда Discord
Ответить | Правка | Наверх | Cообщить модератору

85. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от User (??), 14-Июл-23, 16:25 
С ruffle'ом рофл конечно. Этот калич года то ли с 16 то ли с 17 пилят - и до сих пор половину возможностей оригинала оно не осилило. Если остальное такое же - нууу... Эээээ... Такое себе, в общем.
Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

94. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (96), 14-Июл-23, 16:44 
А сколько лет пилили оригинальный флеш? Лет 20+?
Ответить | Правка | Наверх | Cообщить модератору

106. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от User (??), 14-Июл-23, 18:29 
Ну вот через 20 лет и приходите.
Ответить | Правка | Наверх | Cообщить модератору

128. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:34 
Вы сами не готовы к предметному спору по Rust.
Ответить | Правка | К родителю #35 | Наверх | Cообщить модератору

112. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (112), 14-Июл-23, 18:46 
> Чувак, у тебя раст без пяти минут в ядре окажется, если уже не.

Мне почему-то кажется, что раст в ядре - это примерно как обязательное наличие представителей ЛГБТ в современных конторах. Просто повесточка такая. Сопротивляться сложнее (дороже), чем сделать вид, что следуешь этим "правилам".

Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

113. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 18:48 
> Мне почему-то кажется

Крестись, когда кажется.

> примерно как обязательное наличие представителей ЛГБТ

Кто о чем, а вшивый о бане.

Ответить | Правка | Наверх | Cообщить модератору

129. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:41 
Меня другое беспокоит в наличие кода Rust в ядре. Как будут уживаться unsafe и полная система типов Rust. Без unsafe скорее всего не обойдутся. А так все типы в Rust это структуры и функции к ним.
Ответить | Правка | К родителю #112 | Наверх | Cообщить модератору

133. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 14-Июл-23, 20:05 
> Без unsafe скорее всего не обойдутся

Не скорее всего, а 100%. Но раст не ставит цель писать без unsafe.
Это просто невозможно. Напр. любой FFI будет unsafe.
Цель - отделить safe код от unsafe и минимизировать количество unsafe блоков.

> Как будут уживаться unsafe и полная система типов Rust.

Будут конвертиться в сишные типы на границе модулей. Для unsafe будут писаться safe обертки.
Что-то вроде нам пришел из ядра pointer на буфер вот такой длинны.
Мы верим ядру что оно валидное, потому что у нас выбора особо то и нет.
Из него создаем вектор используя unsafe from_raw_parts.
А дальше используем этот вектор в safe code.
Выполнив работу вызываем fn into_raw_parts(self), получаем (ptr, len, cap) и возвращаем в си код.

Ответить | Правка | Наверх | Cообщить модератору

135. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 20:17 
Если бы на bound всё сводилось к буферам. Layout структур надо тоже отслеживать.  
Ответить | Правка | Наверх | Cообщить модератору

152. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от _ (??), 14-Июл-23, 22:15 
>> Без unsafe скорее всего не обойдутся
>Не скорее всего, а 100%. Но раст не ставит цель писать без unsafe.

А на кЫргЫзкую песню(с) от тогда нужен?

Впрочем те немногие проги на расте которыми хотя бы кто нибудь пользуются выглядят так:
unsafe { собственно прога }

БезопасДность детка! :)

Ответить | Правка | К родителю #133 | Наверх | Cообщить модератору

20. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (39), 14-Июл-23, 13:38 
Раст позволяет небезопасно работать с памятью.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

25. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 13:42 
Дефолтное состояние раста -- безопасная работа с памятью.
Дефолтное состояние сишки -- небезопасная работа с памятью, все ворнинги отключены.
Ответить | Правка | Наверх | Cообщить модератору

31. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (218), 14-Июл-23, 13:50 
Ну правильно, нахчем вселенную обогревать? Включено у разработчика. В итоге это дерьмище ржавое часами компилируется, а притягивается оно по зависимостям какого-то минорного дерьма.
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (22), 14-Июл-23, 13:53 
Пусть вкалывают роботы, а не люди.
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (39), 14-Июл-23, 14:20 
Вкалывают майнеры, а не твои купленные сервера.
Ответить | Правка | Наверх | Cообщить модератору

136. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 14-Июл-23, 20:20 
Куда лучше многомиллионные убытки пользователей дырявого Си-шного софта, да? Уж там-то точно планета не обогревается (если на баги попросту плюнуть и не исправлять их).
Ответить | Правка | К родителю #31 | Наверх | Cообщить модератору

154. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от _ (??), 14-Июл-23, 22:19 
Ой как ты убиваешься за наши деньги то! :)
Но ты же так не убьёшься! (с) :-)
Ответить | Правка | Наверх | Cообщить модератору

43. "Выпуск языка программирования Rust 1.71 "  –3 +/
Сообщение от Аноним (39), 14-Июл-23, 14:19 
Да всем как то пофиг что там по дефолту. Раст небезопасный йазыг.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

137. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Прохожий (??), 14-Июл-23, 20:26 
Ещё один воин супротив Раста за всех пытается говорить. Отучайтесь от этого, глядишь, за умных сойдёте.

Раст - это просто язык программирования, который даёт в руки программисту возможность писать ЛЮБОЙ код, на усмотрение программиста. Безопасность - это свойство кода, а не языка. Код может быть любым, в зависимости от задач и квалификации программиста.

Чем же хорош Раст тогда? Тем, что он предоставляет ВЫБОР: хочешь писать безопасный код - на тебе, хочешь не безопасный - пожалуйста.

Ответить | Правка | Наверх | Cообщить модератору

155. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от _ (??), 14-Июл-23, 22:21 
>Безопасность - это свойство кода, а не языка.

Ты сам это сказал.
Теперь скажи - при таких раскладах - зойчем он нужен?
Я знаю зачем, и кому, но всё же внимательно Вас скушаю :)

Ответить | Правка | Наверх | Cообщить модератору

158. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (162), 14-Июл-23, 22:38 
А для того, чтобы безопасная работа с памятью была не обещание кодера, а результат контроля компилятора.
Ответить | Правка | Наверх | Cообщить модератору

69. Скрыто модератором  –1 +/
Сообщение от Аноним (69), 14-Июл-23, 15:24 
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

169. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (169), 15-Июл-23, 03:01 
как ты это узнал?
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

257. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Neon (??), 16-Июл-23, 04:24 
Это то спустя столько лет, после изобретения языков программирования, наконец то научились безопасно работать с памятью ?))) Да еще древний Basic  умел и не вызывал ошибок с памятью.)))
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

297. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Брат Анон (ok), 17-Июл-23, 09:04 
Наброс засчитан!))
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

32. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (32), 14-Июл-23, 13:52 
>NonZeroI*::is_positive

Это что быстрее и понятнее, чем >=0?

Ответить | Правка | Наверх | Cообщить модератору

57. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (57), 14-Июл-23, 14:55 
Вот я не понимаю почему они так синтаксис переусложняют? Можно же было сделать это как-нить так:
NonZeroI()*{^&}::<>(*)is_positive?:'()
Ответить | Правка | Наверх | Cообщить модератору

68. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (68), 14-Июл-23, 15:23 
Почитай исходники glibc на досуге.
Ответить | Правка | Наверх | Cообщить модератору

97. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (39), 14-Июл-23, 17:07 
Напиши аналог glibc на расте на досуге.
Ответить | Правка | Наверх | Cообщить модератору

177. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Советский инженер (?), 15-Июл-23, 07:02 
Поройся в исходниках Redox, там есть.
Ответить | Правка | Наверх | Cообщить модератору

73. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 14-Июл-23, 15:32 
Обычный С++, всё просто и понятно.
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

178. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 15-Июл-23, 07:20 
В С++ такое определено как ill-formed.
Ответить | Правка | Наверх | Cообщить модератору

141. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от freecoder (ok), 14-Июл-23, 21:00 
Там звёздочка - это не синтаксис, а wildcard от авторов обзора на релиз, чтобы сократить записи I8, I32, I64 написали просто I*.
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

99. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 14-Июл-23, 17:11 
Какой смысл сравнивать NonZeroI с нулем через больше или РАВНО, если оно NonZero?
А причина - строгая типизация, ты не можешь без неявного преобразования сравнить NonZero и numeric literal. И, в отличие от некоторых, тут решили не делать неявных преобразований.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

172. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 05:07 
Я смотрю вы в теме, как они этот тип вообще реализовывают? Это что-то из llvm ?
То есть что за этим скрывается? Что в ассемблере будет?
Ответить | Правка | Наверх | Cообщить модератору

183. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (183), 15-Июл-23, 09:25 
На ассемблере будет обычный int. Но компилятор сможет учитывать, что этот int в своем нормальном состоянии никогда не будет равен нулю и использовать это в своих целях.

Самый банальный пример то, как будут выглядеть опциональные типы, то, что в C++ std::optional, а в расте std::option.

В структуре нужно хранить само значение и признак того, валидно оно или нет.

Т.е. обычно структура на плюсах упрощенно будет выглядеть как-то так:


class Option<T> {
    bool is_empty;
    T value;
}


В общем виде, примерно так же будет выглядеть эта структура и на расте. Но, если вместо T использовать значение, у которого одно из значений может отсутствовать, например нулевое значение, то от булевского флага можно избавиться и использовать нулевое значение этого типа как признак того, что этот optional пустой.

Ответить | Правка | Наверх | Cообщить модератору

196. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от ламер (ok), 15-Июл-23, 12:35 
Не в упрёк, а в дополнение (юзеру выше). Всё таки не стоит сильно упрощать. Говоря про реализацию Option, Result и т.д., мы говорим про типы-суммы. В самом примитивном варианте, да, это будет реализована как показано у Анонима, где в случае отсутствия значения у нас не будет инициализирована память, но это хаки небезопасных языков, что не защищают свои абстракции. Да и с точки зрения типов это не Option-тип.

Для правильного "низкоуровневого" Option<T> нам нужен тег(is_some/is_none) и union(из двух вариантов T и Unit). Вполне рабочий вариант для языков с бедной системой типов, но не для чего-то вроде того же C++. Там всё несколько сложнее.

В Rust многие типы(из коробки core, std, alloc) идут как языковые features, то есть тот же Option не захардкожен в компилятор, но в реализации имеет метки для компилятора aka это вот именно Option, благодаря чему у компилятора больше контекста для всячиских оптимизаций. То же, например, с трейтом Drop. Тот же NonZeroI помечен как nonzero, если вы посмотрите исходники.

И возвращаясь к C++, то эмитировать алгебраические типы данных можно ещё и объектной системой, это "эталонный" способ для так называемых менстримных ООП языков. В C++ это всё очень нетривиально, но в базе своей подход строиться на том, что у нас есть базовый абстрактный класс(тип), а его наследники, реализующие его интерфейс - конструкторы.

Для примера код на Haskell:

data Option a = None | Some a

На волшебном ООП языке X:

abstract class Option<T>
class Some<T> : Option<T>
class None : Option<_>


На поиграться можете в Rust создать тип-произведение, один из элементов которого nonzero, и посмотреть, что в итоге sizeof вашего типа A и Option<A> будет одинаковый.  

Ответить | Правка | Наверх | Cообщить модератору

231. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:43 
Что Вы тут нафантазировали?
Больно читать. Option это enum ( None и Some(T) T - тип )
Какие классы в Rust?
https://doc.rust-lang.org/std/num/struct.NonZeroI32.html - NonZeroI32
https://doc.rust-lang.org/std/option/enum.Option.html - Option
Ответить | Правка | Наверх | Cообщить модератору

251. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от ламер (ok), 16-Июл-23, 02:28 
Я боюсь, что Вы слишком бегло просмотрели текст и не уловили контекст. Но в этом есть и моя вина, что написал не разборчиво. Выше просто поднялась тема про реализацию типов-сумм и я решил несколько раскрыть мысль, сделав небольшие ремарки.

В моем комментарии говорится про то, что в языках без тип-сумм их можно средствами тамошних систем типов. В примитивном варианте — через union-тип, в ООП — через объектную систему и её полиморфизм подтипов.

Я думаю, что осложнила восприятие изложение про связь в Rust компилятора и кода пользователем. Это было лишнее, Вы правы.

Ответить | Правка | Наверх | Cообщить модератору

199. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 14:21 
>этот int в своем нормальном состоянии никогда не будет равен нулю

За счёт чего это гарантируется?

Ответить | Правка | К родителю #183 | Наверх | Cообщить модератору

228. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от warlock66613email (ok), 15-Июл-23, 22:19 
Просто нет возможности туда присвоить ноль. Нет публичного метода или ещё чего-то аналогичного.
Ответить | Правка | Наверх | Cообщить модератору

233. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:54 
Просто учитывается Z флаг процессора при присвоении и выставляется валидность в поле структуры.
Но говорю сразу я не проверял _пока_.
Ответить | Правка | К родителю #199 | Наверх | Cообщить модератору

232. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:48 
NonZero это структура с полем валидности (не ноль) и значением. Нет классов в расте. Структуры и из имплиментация. Отдельно выделяются трейты
Ответить | Правка | К родителю #183 | Наверх | Cообщить модератору

186. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 15-Июл-23, 10:17 
Просто как соответствующий i32. Остальные - аналогично.
Как и предположили выше используются оптимизации и оно занимает ровно столько же места в памяти.
https://godbolt.org/z/8K1PqdTr6

Чуть больше подробностей из доки:
An integer that is known not to equal zero.
This enables some memory layout optimization. For example, Option<NonZeroI32> is the same size as i32:
NonZeroI32 is guaranteed to have the same layout and bit validity as i32 with the exception that 0 is not a valid instance. Option<NonZeroI32> is guaranteed to be compatible with i32, including in FFI.
https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html

Ответить | Правка | К родителю #172 | Наверх | Cообщить модератору

200. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 14:23 
>An integer that is known not to equal zero.

Откуда оно это знает?

Что будет если я напишу а = б - с ?

Ответить | Правка | Наверх | Cообщить модератору

205. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 15-Июл-23, 15:08 
> Откуда оно это знает?

Ты его инициализируешь ненулевым значением.
Инициализатор new(n: i32) возвращает Option<NonZeroI32> и если ты передашь туда 0, то на выходе будет None. Т.е. проверка на 0 происходит только один раз при попытке создать, а дальше оно гарантировано будет ненулевое.

> Что будет если я напишу а = б - с ?

В таком виде оно просто не скомпилируется - у тебя же результат может оказаться нулем.
Для NonZeroI (пока еще?) не реализованы трейты вроде CheckedAdd и CheckedSub (и остальные из Crate num).
Поэтому придется сделать что-то вроде
    let n = NonZeroI32::new(123).unwrap();
    let m = NonZeroI32::new(321).unwrap();
    let k = NonZeroI32::new(m.get() - n.get());
И результат может быть None.

Ответить | Правка | Наверх | Cообщить модератору

207. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 16:01 
Выглядит как шаблонный ад с++.

В расте Юнион типы есть вообще?

Ответить | Правка | Наверх | Cообщить модератору

208. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 15-Июл-23, 16:20 
Как в TS - нету.
Но оно реализуемо через enum
enum unionType {
  Str(String),
  Int(i32)
}
Ответить | Правка | Наверх | Cообщить модератору

210. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (210), 15-Июл-23, 17:27 
Вообще-то есть. То, что Вы показываете(enum) — tagged union. Именно union он как бы unsafe.
Ответить | Правка | Наверх | Cообщить модератору

212. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 15-Июл-23, 17:33 
Вроде вопрос был про "Юнион типы", а не про юнионы.
Ответить | Правка | Наверх | Cообщить модератору

213. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (210), 15-Июл-23, 17:34 
Согласен, прошу прощения. Тогда считайте мой комментарием дополнением к вашему.
Ответить | Правка | Наверх | Cообщить модератору

214. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Анонимусс (?), 15-Июл-23, 17:38 
Мда, налажал с терминологией, обычные union (как в си) тоже есть и, как написали выше, они unsafe.
https://doc.rust-lang.org/reference/items/unions.html
Ответить | Правка | К родителю #210 | Наверх | Cообщить модератору

224. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 21:49 
> Мда, налажал с терминологией, обычные union (как в си) тоже есть и,
> как написали выше, они unsafe.
> https://doc.rust-lang.org/reference/items/unions.html

Не, речь шла именно про тип объединяющий два других типа.
То есть например (int8 U nill) что означает что функция может вернуть то или другое.

Ответить | Правка | Наверх | Cообщить модератору

236. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:37 
Для этого есть Option<i8>   fn foo() -> Option<i8>
что бы им воспользоваться вызывающему придется развернуть.
in_caller = foo();
let in_caller = match in_caller {
Some(a) => a,
None => {здесь то что понимается под nill },
};
Не совсем понятно что Вы понимаете под nill (Си)
Если отсутствие валидного значения - используйте Option
Если ошибку в вызванной функции - используйте Result. Result это enum ( ok(T) и Err(E) )
Ответить | Правка | Наверх | Cообщить модератору

240. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:57 
Это не ад. Это то что должно быть сделано. Раст строг.

Ответить | Правка | К родителю #207 | Наверх | Cообщить модератору

238. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:48 
> let n = NonZeroI32::new(123).unwrap();

Ну если Вы сами реализуете... По-умолчанию нет такого метода у типа NonZeroI32

Ответить | Правка | К родителю #205 | Наверх | Cообщить модератору

239. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:51 
Посыпал голову пеплом - переклинило ((
Ответить | Правка | Наверх | Cообщить модератору

235. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:19 
Не арифметики с NonZeroI*
Ответить | Правка | К родителю #200 | Наверх | Cообщить модератору

247. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 02:05 
Вся арифметика через NonZero*.new()
use std::num::NonZeroI32;
  2 fn main() {
  3     let z = NonZeroI32::new(123).unwrap();
  4     let mut b:i32 = 1;
  5     let mut a:i32 = 3;
  6     let mut c:NonZeroI32 = match NonZeroI32::new(a - b) {
  7         Some(a) => a,
  8         None    => {panic!("Попытка присвоить нуль NonZero типу")},
  9     };
10     println!("{:?}",c);
11     c = NonZeroI32::new(4 + 7).unwrap();
12     println!("{:?}",c);
13
14 }
Если 0 требуется обработка или будет паника
Ответить | Правка | Наверх | Cообщить модератору

116. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 18:58 
> Это что быстрее и понятнее, чем >=0?

Вы работали с растом? Раст может сравнивать только одинаковый тип данных. Кроме того ненулевой тип удобен при делении. Кроме того is_positive хорошо вписывается в цепочку вызовов. которая удобна для функционального программирования.  

Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

182. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 15-Июл-23, 09:24 
Ненулевой тип? О_о
Ответить | Правка | Наверх | Cообщить модератору

187. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонимусс (?), 15-Июл-23, 10:24 
А что удивительного? Обычный зависимый тип (который dependent type).
Их там целое семейство по размерностям https://doc.rust-lang.org/stable/std/num/index.html
Ответить | Правка | Наверх | Cообщить модератору

219. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 15-Июл-23, 21:31 
> А что удивительного?

то, что таких типов должно быть ровно столько, сколько чисел всего.

Про деление на ноль там кто-то говорил, ну и деление на 1 имеет ровно такой же смысл, хотя и деление на ноль свой смысл имеет. Почему нет NonOneI8 и т.д. ? Не нужно это все в языке, достаточно дать возможность определять собственные типы и все - NonXIn

> Их там целое семейство по размерностям https://doc.rust-lang.org/stable/std/num/index.html

лол, кек, а чего вы хотели, и каждый новый тип в таком языке сколько типов будет плодить? "типичный (типовый) адъ" :)


Ответить | Правка | Наверх | Cообщить модератору

241. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 00:11 
Всё таки понятие нулевой элемент множества существует. Если в контексте важен единичный элемент множества, то можно и его реализовать по аналогии.
Ответить | Правка | Наверх | Cообщить модератору

290. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 16-Июл-23, 23:32 
> Всё таки понятие нулевой элемент множества существует. Если в контексте важен единичный
> элемент множества, то можно и его реализовать по аналогии.

в смысле нулевой элемент множества?

Ответить | Правка | Наверх | Cообщить модератору

294. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (294), 17-Июл-23, 02:26 
Ноль это нулевой элемент множества целых чисел, множества действительных чисел, множества комплексных чисел. Например вопрос: ноль это положительное число или отрицательное.
В теории множеств есть понятие нулевого элемента. Если в задаче важно, чтобы данные гарантированно не содержали ноль, то для изменения есть только один путь окукливания NonZeroT::new() (где Т это какой либо тип) и этот тип не скрещивался с другими типами. После разворачивания NonZeroT::new() по размеру становиться равным Т, перед этим идет проверка на не равенство нулю. Я привел пример выше.
Ответить | Правка | Наверх | Cообщить модератору

302. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 18-Июл-23, 09:04 
>В теории множеств есть понятие нулевого элемента.

Где вы прочли это? дайте ссылку. Возвожно вы путаете понятие нейтрального элемента.

Ответить | Правка | Наверх | Cообщить модератору

201. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 14:24 
> Ненулевой тип? О_о

Поинтересуйтесь на досуге про Аду, язык такой, узнаете много нового.

Ответить | Правка | К родителю #182 | Наверх | Cообщить модератору

220. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 15-Июл-23, 21:35 
> Поинтересуйтесь на досуге про Аду, язык такой, узнаете много нового.

Там есть тип "НеЧислоН"?


Ответить | Правка | Наверх | Cообщить модератору

204. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (204), 15-Июл-23, 14:50 
>Раст может сравнивать только одинаковый тип данных

Это дефект раста, что маленькие типы не расширяются автоматически до больших при операциях, а константы вообще по-умолчанию не минимального для них типа, что всякие костыли приходится городить.

>Кроме того ненулевой тип удобен при делении.

Нет, не удобен. Деление на ноль - валидная операция, получается nan.

>Кроме того is_positive хорошо вписывается в цепочку вызовов. которая удобна для функционального программирования.

Не удобнее, чем ручное сравнение или лямбда. Не нагляднее.

Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

217. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонин (?), 15-Июл-23, 19:32 
> маленькие типы не расширяются автоматически до больших при операциях

Это наоборот фича - нет никаких неявных преобразований, которые потом могут отстрелить ногу. Хочешь работать с типами разной размерности - будь добр, сам преобразуй во что нужно.

> что всякие костыли приходится городить.

Под костылями подразумевается просто задать тип при объявлении константы? ничосе костыль однако!

> валидная операция, получается nan.

И что с ним потом делать? А как часто вам нужен nan?
Вот где нужен там просто не используйте NonZero, делов-то.

> Не нагляднее

Сложно найти что-то более наглядное чем текст вроде is_positive, так что мимо.

Ответить | Правка | Наверх | Cообщить модератору

222. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 15-Июл-23, 21:39 
> А как часто вам нужен nan?

а зачем он в языке? если достаточно дать возможность определять собственные типы.

Ответить | Правка | Наверх | Cообщить модератору

234. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонин (?), 15-Июл-23, 23:06 
> Деление на ноль - валидная операция, получается nan.

А вот кстати и нет.

> а зачем он в языке?

NaN существует потому что описан в IEEE 754 в бородатом 1985. Для floating-point.
И именно поэтому тут мы NaN не получим - у нас типы целочисленные.

В rust деление на ноль вызовет панику "attempt to divide by zero", а в сишечке...

А в сишечке это UB согласно 6.5.5 Multiplicative operators:
"The result of the / operator is the quotient from the division of the first operand by the
second; the result of the % operator is the remainder. In both operations, if the value of
the second operand is zero, the behavior is undefined"

Но это никакая не валидная операция.

Вообще не очень понимаю, чем вам мешает эти NonZero?
Ну сделали тип потому что он кому-то нужен. Ну не пользуйтесь им, в чем проблема?

Ответить | Правка | Наверх | Cообщить модератору

242. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 00:20 
А зачем нужно значение null в значение указателя в Си? не для того ли что нужно указать malloc, что память не выделена.
Ответить | Правка | К родителю #222 | Наверх | Cообщить модератору

287. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 16-Июл-23, 23:20 
> А зачем нужно значение null в значение указателя в Си? не для
> того ли что нужно указать malloc, что память не выделена.

а значение причем? речь о типах, а от или иной тип определяет допустимость значений.


Ответить | Правка | Наверх | Cообщить модератору

243. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 00:25 
Rust дает возможность определять свои типы. Определяете struct {}. Реализуйте impl {} и trait {}
к ней.
Ответить | Правка | К родителю #222 | Наверх | Cообщить модератору

221. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Sw00p aka Jerom (?), 15-Июл-23, 21:37 
> Кроме того ненулевой тип удобен при делении.

так же как и NonOneI8 при делении на 1 :)


Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

237. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 15-Июл-23, 23:44 
Если Вы реализуете свои трейты Add, Sub, Div, Mul нет проблем на типах NonZero и NonOne.
Ответить | Правка | Наверх | Cообщить модератору

51. "Выпуск языка программирования Rust 1.71 "  –7 +/
Сообщение от Аноним (51), 14-Июл-23, 14:26 
По сравнению с Go... Rust - это ненужный мусор в 90% случаях, который только людям жизнь усложняет, как и поганый kubernetes.
Ответить | Правка | Наверх | Cообщить модератору

55. "Выпуск языка программирования Rust 1.71 "  +6 +/
Сообщение от анонимус (??), 14-Июл-23, 14:47 
сравнение двух языков с Garbage Collector и без оного, показывает твои великолепные знания програмированния на уровне "отчислен из ПТУ животноводства за неуспеваемость"

хотя мне было бы инетесно взглянуть как ты будешь Го запихивать в ядро или писать на нем видео драйвер
сам Го хорош (почти без альтернативен) в своей нише, но гвозди надо забивать молотком, а не микроскопом

Ответить | Правка | Наверх | Cообщить модератору

77. "Выпуск языка программирования Rust 1.71 "  –3 +/
Сообщение от FF (?), 14-Июл-23, 15:48 
В Go как раз есть GC. Т.ч. это ты отчислен за знания программироваННия.
Ответить | Правка | Наверх | Cообщить модератору

86. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (39), 14-Июл-23, 16:29 
Во первых это хорошо, потому что на расте никто нормальный gc так и не смог сделать. Во-вторых в go gc отключаемый.
Ответить | Правка | Наверх | Cообщить модератору

118. "Выпуск языка программирования Rust 1.71 "  –4 +/
Сообщение от Аноним (162), 14-Июл-23, 19:03 
Никто ии не собирался изначально делать GC в Rust. Уже тогда поняли ущербность GC.
Ответить | Правка | Наверх | Cообщить модератору

130. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Анонимусс (?), 14-Июл-23, 19:48 
Вообще-то не только собирались, но и сделали. Правда в какой-то древней версии, но факт что был.
Вот даже заметка о том как его выпиливали https://pcwalton.github.io/_posts/2013-06-02-removing-garbag...
Там еще green threads были пряма в рантайме))
Но до версии 1.0 оно не дожило и слава богу.
Ответить | Правка | Наверх | Cообщить модератору

110. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (110), 14-Июл-23, 18:40 
Так он и написал, что в Go есть GC, а в расте нет. Правда мысль сформулировал кривовато.
Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

295. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от S22 (?), 17-Июл-23, 08:02 
> Так он и написал, что в Go есть GC, а в расте
> нет. Правда мысль сформулировал кривовато.

И в го и в Раст есть ГС. Но в го это часть функционала языка, а в Раст это необязателый для использования кусок стандартной библиотеки, который используется в основном для обмена между потоками и то не всегда.

Ответить | Правка | Наверх | Cообщить модератору

117. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:01 
В Go есть GC.
В Rust нет GC.
Как можно сравнивать?
Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

197. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (190), 15-Июл-23, 12:59 
Тут мягкое с кислым, сферу с балетом сравнивают
Ответить | Правка | Наверх | Cообщить модератору

78. "Выпуск языка программирования Rust 1.71 "  –2 +/
Сообщение от Витюшка (?), 14-Июл-23, 15:50 
А теперь замени в предложении Go на Zig
Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

230. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анончик (?), 15-Июл-23, 22:33 
Приходите после мажорного релиза
Ответить | Правка | Наверх | Cообщить модератору

298. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Брат Анон (ok), 17-Июл-23, 09:07 
https://github.com/gopher-os/gopher-os
https://github.com/SanseroGames/LetsGo-OS
https://github.com/icexin/eggos
Не благодари. При всех нареканиях -- Go вполне себе системный язык.
Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

195. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (195), 15-Июл-23, 12:23 
Как там без полноценного полиморфизма, дженериков, без вменяемой системы типов и без алгебраических типов данных в 2023. Писать код и не иметь даже намёк на какую-то верифицируемость, полноту. Я когда вижу эти iota, interface{}  я не знаю жалеть этих людей или насмехаться  над ними
Ответить | Правка | К родителю #51 | Наверх | Cообщить модератору

288. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от _ (??), 16-Июл-23, 23:21 
They can't be care less, bro! :)
Go - состоялся, нравится вам это или нет, даже в наших кровавых энтер-прайсах ни у кого не вызывает недоумения.
>я не знаю жалеть этих людей или насмехаться  над ними

ЧСВ надо лечить, для начала сравни их зряплату и свою :))))

  

Ответить | Правка | Наверх | Cообщить модератору

296. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Проходил мимо (?), 17-Июл-23, 08:04 
Глупость несусветная, как про Rust, так и про Kubernetes.
Ответить | Правка | К родителю #51 | Наверх | Cообщить модератору

60. "Выпуск языка программирования Rust 1.71 "  +8 +/
Сообщение от Аноним (60), 14-Июл-23, 15:05 
Rust конечно классный язык. Такого выразительного и безопасного Hello World'а как на нём, я не написал ни на одном языке!
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:07 
Жаль что Вы дальше HW не продвинулись. Безопасность работы с данными. многообразие конструкций,  мультипарадигменный, не навязывается наследование, кодер включает с код, только то что нужно и много ещё.  
Ответить | Правка | Наверх | Cообщить модератору

142. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (145), 14-Июл-23, 21:03 
И всё это исключительно с помощью магии без участия процессора.
Ответить | Правка | Наверх | Cообщить модератору

146. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (162), 14-Июл-23, 21:16 
На уровне компилятора. Но есть и рантайм проверка типов.
Ответить | Правка | Наверх | Cообщить модератору

171. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Rustoman (?), 15-Июл-23, 05:05 
В рантайме проверяются только слайсы
Ответить | Правка | Наверх | Cообщить модератору

227. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:18 
Прошу прощение - в уме было проверка _некоторых_ типов, а написал что написал )
Ответить | Правка | Наверх | Cообщить модератору

147. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (162), 14-Июл-23, 21:18 
Можно пример компилирования без участия процессора?
Ответить | Правка | К родителю #142 | Наверх | Cообщить модератору

173. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 05:11 
С помощью магии же.

Ну а вообще на листике можно при желании.

Ответить | Правка | Наверх | Cообщить модератору

229. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:20 
Я не застал те времена )
Ответить | Правка | Наверх | Cообщить модератору

299. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Брат Анон (ok), 17-Июл-23, 09:09 
Работа компилятора перекладывается на плечи программиста. Это плохое решение. Я хочу, чтобы программист писал код, а не думал: "Вот это мне в бокс завернуть, или мутабельную ссылку подсунуть?"
Ответить | Правка | К родителю #119 | Наверх | Cообщить модератору

72. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (72), 14-Июл-23, 15:32 
Да, это вопрос. Что хуже кодеру: мозгодробительный синтаксис или необходимость следить за памятью?
Ответить | Правка | Наверх | Cообщить модератору

75. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Анонин (?), 14-Июл-23, 15:35 
Ты серьезно? На каком языке ты пишешь что тебе этот синтаксис кажется мозгодробительным?
Ответить | Правка | Наверх | Cообщить модератору

82. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Аноним (82), 14-Июл-23, 16:16 
Perl
Ответить | Правка | Наверх | Cообщить модератору

120. "Выпуск языка программирования Rust 1.71 "  –3 +/
Сообщение от Аноним (162), 14-Июл-23, 19:11 
Синтаксис прост и элегантен. Если Вы под мозгодробилкой понимаете многообразие языковых конструкций, то ничто не запрещает Вам пользоваться примитивами. От вас только потребуется понять что такое заимствование и время жизни (область видимости).
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

131. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (162), 14-Июл-23, 19:48 
Синтаксис можно выучить, а за памятью нужно будет следить всегда.
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

211. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (190), 15-Июл-23, 17:31 
Можно пальцами ног ручку держать и писать ими же, но зачем, когда есть для этого пальцы рук?
Ответить | Правка | Наверх | Cообщить модератору

270. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:31 
Можно сначала думать головой, а потом уже пытаться рожать аналогии. У тебя явно не получилось.
Ответить | Правка | Наверх | Cообщить модератору

175. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 05:14 
Ненужно компромиссов, выбирайте С++ !!!
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

198. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (96), 15-Июл-23, 14:07 
... и получите мозгодробительный синтаксис, необходимость следить за памятью, пачку UB и несовместимость компиляторов в придачу!
Ответить | Правка | Наверх | Cообщить модератору

202. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноньимъ (ok), 15-Июл-23, 14:27 
> ... и получите мозгодробительный синтаксис, необходимость следить за памятью, пачку UB
> и несовместимость компиляторов в придачу!

Всё включено!

Ответить | Правка | Наверх | Cообщить модератору

258. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Neon (??), 16-Июл-23, 04:26 
С памятью безопасно еще древнючий basic прекрасно работал.)))
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

87. "Выпуск языка программирования Rust 1.71 "  –4 +/
Сообщение от Аноним (93), 14-Июл-23, 16:29 
> Методы работы с памятью в Rust избавляют разработчика от ошибок при манипулировании указателями...

...путём вешания на разработчика двойной нагрузки по отслеживанию состояния указателя. Гении, б___! :))) (ц) Лавров

Ответить | Правка | Наверх | Cообщить модератору

111. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (22), 14-Июл-23, 18:45 
> путём вешания на разработчика двойной нагрузки по отслеживанию состояния указателя

Иногда лучше жевать, чем говорить.

Ответить | Правка | Наверх | Cообщить модератору

115. "Выпуск языка программирования Rust 1.71 "  –2 +/
Сообщение от Аноним (39), 14-Июл-23, 18:53 
Вот-вот про тебя хорошо подходит, лучше жевать чем говорить за Раст.
Ответить | Правка | Наверх | Cообщить модератору

122. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (162), 14-Июл-23, 19:13 
Вместо ругани могли бы разъяснить и привести пример.
Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

132. "Выпуск языка программирования Rust 1.71 "  +3 +/
Сообщение от Аноним (22), 14-Июл-23, 19:58 
Никакого примера не будет, ибо для этого надо уметь программировать.
Ответить | Правка | Наверх | Cообщить модератору

138. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Прохожий (??), 14-Июл-23, 20:33 
> путём вешания на разработчика двойной нагрузки по отслеживанию состояния указателя

Шта?

Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

185. "Выпуск языка программирования Rust 1.71 "  –2 +/
Сообщение от Аноним (39), 15-Июл-23, 09:32 
Да вообще пофиг как у вас что называется. Время жизни указателя или время святой безопасности.
Ответить | Правка | Наверх | Cообщить модератору

248. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Прохожий (??), 16-Июл-23, 02:06 
То есть, ты ничего не знаешь, но мнение имеешь. Так?
Ответить | Правка | Наверх | Cообщить модератору

179. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (179), 15-Июл-23, 08:11 
всем давно ясно что раст - это тупик и не стоит тратить на него ресурсы. языковые модели будут писать программы на С.
Ответить | Правка | Наверх | Cообщить модератору

180. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (180), 15-Июл-23, 08:34 
Если вы спросите у chatgpt он напишет вам код на Питоне.
Ответить | Правка | Наверх | Cообщить модератору

181. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Аноним (179), 15-Июл-23, 08:55 
может но зачем?
Си легкочитаемый и легкоадаптируемый под разные платформы. Исходник легко генерировать и легко парсить.  Результат компиляции максимально компактный получается. Что еще надо ?)
Ответить | Правка | Наверх | Cообщить модератору

184. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (39), 15-Июл-23, 09:30 
Нейросети гораздо проще будет написать простыню проверки всего от всего на Си. Человеку что то забыть гораздо проще.
Ответить | Правка | К родителю #180 | Наверх | Cообщить модератору

188. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (218), 15-Июл-23, 10:25 
Особенно хорошо нейросети справляются со SQL, хотя казалось бы. Я всё ещё убеждён, что нейросети -- это булшит-технологии. Но, вообще говоря, появляется новое железо, способное ворочать большие объёмы данных с контекстом, и результат становится лучше. Но до сих пор возникают ошибки, немыслимые для человека, а галлюцинации побороть просто невозможно. Вот откуда появляются данные, которые существовать не могут и совершенно не уместны? Может быть, следующее поколение сеток будет более совершенным. GPT4 не очень впечатляет пока что, а сколько хайпа было.
Ответить | Правка | Наверх | Cообщить модератору

189. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (145), 15-Июл-23, 11:08 
добрый дядя должен тебе всё принести на блюдечке?
Ответить | Правка | Наверх | Cообщить модератору

191. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (218), 15-Июл-23, 11:57 
Дядя собирает за это деньги, и не маленькие.
Ответить | Правка | Наверх | Cообщить модератору

194. Скрыто модератором  +1 +/
Сообщение от Аноним (-), 15-Июл-23, 12:21 
Ответить | Правка | К родителю #189 | Наверх | Cообщить модератору

225. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (231), 15-Июл-23, 22:07 
Опять предположения. А я привел проверяемый факт - скопируйте условия задачи с сайта (https://leetcode.com/problemset/all/ напрмер) и дайте их ChatGPT
Ответить | Правка | К родителю #184 | Наверх | Cообщить модератору

271. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:38 
> всем давно ясно что раст - это тупик

Всем людям с недоразвитыми когнитивными способностями - да, безусловно. Но таковые, подозреваю, не являются для отрасли чем-то ценным и незаменимым.

> языковые модели будут писать программы на С

Языковые модели, если и будут что-то на чём-то писать, то на первых порах это будет аналог Питона или другого подобного языка, лёгкого для чтения людьми. Чтобы пока языковые модели не научились писать код так же, как люди, их можно было легко контролировать.

А потом языковые модели будут писать код на машинном коде конечной железяки, потому что языковым моделям все эти ваши компиляторы/интерпретаторы нафиг не сдались.

Ответить | Правка | К родителю #179 | Наверх | Cообщить модератору

289. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от _ (??), 16-Июл-23, 23:29 
>> всем давно ясно что раст - это тупик
>Всем людям с недоразвитыми когнитивными способностями - да, безусловно.

Ну Ок, раст - для ЫЛИТЫ с развитыми когнитивными способностями.
:)

Ответить | Правка | Наверх | Cообщить модератору

304. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 18-Июл-23, 12:52 
Не так. Rust - для людей, понимающих свою ответственность перед пользователями. То есть, для обычных нормальных людей.

На самом деле ничего сложного в этом ЯП нет. Он намного проще тех же Плюсов.

Ответить | Правка | Наверх | Cообщить модератору

215. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (215), 15-Июл-23, 18:18 
Хороший язык! Позволяет безопасно работать с памятью!
Ответить | Правка | Наверх | Cообщить модератору

216. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Пушок (?), 15-Июл-23, 19:01 
1. Комментарий будет зачтён в следующий месяц, так как в этом выплата уже была.
2. Комментарий несодержательный, комментарий-лозунг. Пройдёт по минимальной ставке. Мне всё равно, но ваш руководитель следит за KPI, не подведите его.

Спасибо за понимание.

Ответить | Правка | Наверх | Cообщить модератору

226. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (231), 15-Июл-23, 22:10 
У Си своя ниша, у Rust своя. Я полгода назад тоже топил за Си и ругал Rust за сложность. Но сел и потратил месяц. И сейчас он очень даже нравиться, больше С++. Он заставляет строже мыслить.
Ответить | Правка | Наверх | Cообщить модератору

244. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (51), 16-Июл-23, 01:23 
Сел и потратил месяц на Go. С ним не надо мыслить. Просто пишешь и всё получается.
Ответить | Правка | Наверх | Cообщить модератору

250. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (249), 16-Июл-23, 02:16 
В наш век расслабленности хочется мыслить строга. ) Дойдет время и Go изучу если увижу что там есть убер фичи.
Ответить | Правка | Наверх | Cообщить модератору

265. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Facemaker (?), 16-Июл-23, 12:11 
>Go. С ним не надо мыслить. Просто пишешь и всё получается.

Тоже так думал после "медового месяца" с Go. Потом скинули на доработку некую программу с большим количеством конкурентного кода с беспорядочной запутанной синхронизацией... Ушёл на Rust нафиг. Реальная история, не вру.

Ответить | Правка | К родителю #244 | Наверх | Cообщить модератору

291. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от _ (??), 16-Июл-23, 23:33 
В следующий раз: "после медового месяца" с Rust. Потом скинули на доработку некую программу с большим количеством конкурентного кода с беспорядочной запутанной синхронизацией..."
Ушёл на нафиг в закат.

Суета сует(С)Эээ...эээ... хер проговоришь аффтфра :)

Ответить | Правка | Наверх | Cообщить модератору

272. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:43 
Во-первых, с ЛЮБЫМ языком надо мыслить, иначе получится ерунда. Впрочем, если ты - начинающий кодер, тебе простительно так говорить, за тебя пока мыслят старшие товарищи.

Во-вторых, Go - язык и GC, у Rust нет GC.

Ответить | Правка | К родителю #244 | Наверх | Cообщить модератору

260. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (260), 16-Июл-23, 06:48 
>Я полгода назад тоже топил за Си
>И сейчас он очень даже нравиться, больше С++.

Полгода назад ты не мог отличать "чистый Си" от "Си плюс-плюс". Но сел и потратил месяц. И до сих пор не можешь отличить "чистый Си" от "Си плюс-плюс".

Ответить | Правка | К родителю #226 | Наверх | Cообщить модератору

261. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (179), 16-Июл-23, 08:40 
Какая же у раст ниша ? Просветите нас
Ответить | Правка | К родителю #226 | Наверх | Cообщить модератору

264. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Facemaker (?), 16-Июл-23, 12:08 
>Какая же у раст ниша ? Просветите

Системное программирование. Несколькими российскими компаниями разрабатываются операционные системы и движки СУБД на Rust. Код пока не опенсурсный. Инсайд.

Ответить | Правка | Наверх | Cообщить модератору

292. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от _ (??), 16-Июл-23, 23:40 
Школота ЫнкорпорЭйтед, CоС то уже написали? А то удачи не видать :)))
Аутсайд.
Ответить | Правка | Наверх | Cообщить модератору

293. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (293), 17-Июл-23, 01:20 
Уже на Redis научились свой логотип вешать? Вот это прогресс, не зря гранты сосут.
Ответить | Правка | К родителю #264 | Наверх | Cообщить модератору

259. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Neon (??), 16-Июл-23, 04:28 
Безопасно работать с памятью умел древнейший basic.))) И вообще, как то должно быть стыдно, что спустя столько лет после изобретения языков высокого уровня по прежнему проблемы с безопасной работой с памятью вылезают.))) Двоечники никак старые учебники прочитать не могут.)))
Ответить | Правка | К родителю #215 | Наверх | Cообщить модератору

266. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от freecoder (ok), 16-Июл-23, 12:21 
Бейсик же интерпретируемый язык.
Ответить | Правка | Наверх | Cообщить модератору

267. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 16-Июл-23, 13:09 
Можно компилировать. Там же нет eval.
Ответить | Правка | Наверх | Cообщить модератору

274. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 14:54 
Скажи, а ты реально не понимаешь, почему бейсик плох для системного ПО или так умело притворяешься?
Ответить | Правка | Наверх | Cообщить модератору

278. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 16-Июл-23, 16:48 
Я понимаю, что ты привык, когда компилятор за тебя следит за владением, потому твоя способность уследить за контекстом атрофировалась. В виде исключения перечитаю за тебя ветку и скопирую:

>>>>> Хороший язык! Позволяет безопасно работать с памятью!
>>>> Безопасно работать с памятью умел древнейший basic.)))
>>> Бейсик же интерпретируемый язык.
>> Можно компилировать. Там же нет eval.
> Скажи, а ты реально не понимаешь, почему бейсик плох для системного ПО
> или так умело притворяешься?

Как видишь, "системное ПО" существует только в твоей части этого обсуждения - его мнимой части.

Что касается твоего вопроса, я опять за тебя погуглил, почитай для общего развития "Пишем драйвер на PureBasic"  https://www.cyberforum.ru/blogs/204791/blog3078.html

И потом подумай, почему на Бейсике это было 10 лет назад, на Плюсах - 20, а на Rust... а где оно?

Ответить | Правка | Наверх | Cообщить модератору

280. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 16-Июл-23, 17:02 
> перечитаю за тебя ветку

Перечитай заодно новость и подумай о контексте. Глобальном контексте. Если не догадаешься о чём этот глобальный контекст, дай знать, я тебе помогу.

> Пишем драйвер на PureBasic

И что, много таких драйверов было написано? Подумай, почему ответ будет отрицательным. Также подумай (как бы тебе не было тяжело), что системное программирование - это не только о драйверах.

> а на Rust... а где оно?

Ты, вроде, декларировал, что умеешь пользоваться поиском. Или мне показалось? Андроид (местами), Линукс (местами, хотя и пока строго отгороженными), и куча другого ПО. Слона-то я и не заметил. Да?

Ответить | Правка | Наверх | Cообщить модератору

285. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 16-Июл-23, 20:51 
>> а на Rust... а где оно?
> Ты, вроде, декларировал, что умеешь пользоваться поиском. Или мне показалось? Андроид (местами),
> Линукс (местами, хотя и пока строго отгороженными), и куча другого ПО.
> Слона-то я и не заметил. Да?

Да. Перечитай заодно "почему на Бейсике это было 10 лет назад, на Плюсах - 20" и подумай о контексте. Глобальном контексте. Если не догадаешься о чём этот глобальный контекст, дай знать, я тебе помогу.

>> Пишем драйвер на PureBasic
> И что, много таких драйверов было написано? Подумай, почему ответ будет отрицательным.

Потому что ты не знаешь этот ответ.

> Также подумай (как бы тебе не было тяжело), что системное программирование
> - это не только о драйверах.

Мне не тяжело за тебя думать, поскольку я тебе объяснил, почему для тебе делаю исключение. Системное программирование это ещё и башпортянки.

Ответить | Правка | Наверх | Cообщить модератору

305. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 18-Июл-23, 13:04 
>почему на Бейсике это было 10 лет назад, на Плюсах - 20

И где тот же бейсик в ядре ОС, и код без ошибок работы с памятью на Плюсах?
В общем, перестань уже натягивать сову на глобус.

>>Подумай, почему ответ будет отрицательным.
>Потому что ты не знаешь этот ответ.

Конечно, знаю. Уверен, ты тоже знаешь. Тебе просто не нравится Rust, поэтому ты так сопротивляешься очевидному.

>Системное программирование это ещё и башпортянки.

В каком-то смысле.

Но я не их имел ввиду, и ты это прекрасно понял.

Ответить | Правка | Наверх | Cообщить модератору

311. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 19-Июл-23, 08:58 
>>почему на Бейсике это было 10 лет назад, на Плюсах - 20
> И где тот же бейсик в ядре ОС,

В сообщении №278 я давал ссылку. Вернись и перечитай его ещё раз, не отнимай у меня время бестолковыми вопросами.

Ответить | Правка | Наверх | Cообщить модератору

317. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 22-Июл-23, 15:11 
Вот ещё одно подтверждение, что с логикой у тебя явные очевидные проблемы. Давай я тебе объясню, в чём они состоят на этот раз.

То, что есть написанная каким-то гиком статья о том, как можно написать драйвер на Бейсике, не означает, что драйверы на этом языке есть в ядре какой-либо ОС.

Другими словами, подтверждением твоей позиции может быть только ссылка на реальный драйвер в любой известной тебе ОС (а не статья на возможность написать такой драйвер).

Ответить | Правка | Наверх | Cообщить модератору

282. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от freecoder (ok), 16-Июл-23, 19:48 
> Можно компилировать. Там же нет eval.

Тогда придётся и весь жирный рантайм прикомпилировать. Прелесть Rust как раз в том, что есть безопасное автоматическое управление памятью и нет жирного рантайма.

Ответить | Правка | К родителю #267 | Наверх | Cообщить модератору

284. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от n00by (ok), 16-Июл-23, 20:46 
>> Можно компилировать. Там же нет eval.
> Тогда придётся и весь жирный рантайм прикомпилировать.

Не придётся.

Ответить | Правка | Наверх | Cообщить модератору

273. "Выпуск языка программирования Rust 1.71 "  +1 +/
Сообщение от Прохожий (??), 16-Июл-23, 14:53 
А люди, профессионально занимающиеся системным программированием и не знали. Забыли у анонима с Опеннета спросить, очевидно. Или все поголовно двоечники. А потом удивляемся, почему некоторые критические баги в сложном ПО годами живут. Вот где проблема зарыта, оказывается. Все они плохо учились!
Ответить | Правка | К родителю #259 | Наверх | Cообщить модератору

262. "Выпуск языка программирования Rust 1.71 "  +2 +/
Сообщение от Аноним (145), 16-Июл-23, 08:48 
Надоело читать новости про Rust? Zig, Odin, Jai, на крайняк Carbon в помощь!
Ответить | Правка | Наверх | Cообщить модератору

275. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Прохожий (??), 16-Июл-23, 15:08 
Пытался искать сравнительные статьи Rust vs Zig. По итогам особо не впечатлился достижениями Zig, хотя плюшки там, безусловно, есть. Остальные языки, подозреваю, ещё бОльшая маргинальщина, чем Zig?
Ответить | Правка | Наверх | Cообщить модератору

277. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Аноним (277), 16-Июл-23, 16:01 
Переходи на .Net 8 и не клюй всем мозг.
Ответить | Правка | Наверх | Cообщить модератору

279. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Прохожий (??), 16-Июл-23, 16:55 
Ещё один "эксперт" решил выступить от имени всех. Где вы такие берётесь-то, а? Это был риторический вопрос, если что.
Ответить | Правка | Наверх | Cообщить модератору

286. "Выпуск языка программирования Rust 1.71 "  –1 +/
Сообщение от Аноним (145), 16-Июл-23, 22:32 
Твой пост публичный и доступен всем. Не дошло?
Ответить | Правка | Наверх | Cообщить модератору

306. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 18-Июл-23, 13:05 
Но это не означает, что мой пост всем клюёт мозг. Не дошло?
Ответить | Правка | Наверх | Cообщить модератору

303. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Янис (?), 18-Июл-23, 10:14 
Не имел дело с обсуждаемым языком, однако же то, как он навязывается, и сколько я о нем читал, наталкивает на мысль о том, что он продвигается корпами, чтобы контролировать программистов. Надежная работа с памятью? Ну в Си (а сабж подается как заменитель Си), если следить, за тем, что делаешь, нет проблем с этим: и в этом нет высшей математики. И в этом таже нет никакой двойной работы, как некоторые пишут... Синтаксис? У Си он просто в разы понятнее. Исполняемый файл? Хелло Ворлд на сабже весит больше чем программа на сотни (а то и даже на тысячи) строк на Си. Проталкивание сабжа в Линукс - вообще ни разу не аргумент в его пользу: он туда попал исключительно потому, что корпы его продавили. Рекомендация от организации безопасности США о том, что мол не стоит использовать "небезопысные" языки типа Си, а вот есть Джава, и прочие языки от корпов, лишь подтверждает мои размышления. Каждому разумеется самому решать, на чем писать, но вот у меня нет желания попадать под контроль корпов.
Ответить | Правка | Наверх | Cообщить модератору

307. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 18-Июл-23, 13:14 
>Не имел дело с обсуждаемым языком

Но мнение имею. Не нравится мне твой Паваротти. А почему? Да вчера Вася напел.

>то, как он навязывается

И как же он навязывается? Тебя, лично тебя, кто-то заставляет им пользоваться?

>он продвигается корпами, чтобы контролировать программистов

Паранойя в чистом виде. Он продвигается теми, кому важно уменьшить количество багов в критически важном для бизнеса софте. Что ж до вас эта простая мысль никак не дойдёт?

>Ну в Си (а сабж подается как заменитель Си), если следить, за тем, что делаешь, нет проблем с этим: и в этом нет

Диды и не знали, что так, оказывается, можно. Только некоторые уязвимости годами не исправляются,несмотря на миллионы глаз. Не иначе очередной заговор.

Ответить | Правка | Наверх | Cообщить модератору

316. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Hck3r (?), 19-Июл-23, 17:28 
Безопасность безопасностью, но ошибок никто не отменял
https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=rust
Ответить | Правка | Наверх | Cообщить модератору

318. "Выпуск языка программирования Rust 1.71 "  +/
Сообщение от Прохожий (??), 22-Июл-23, 15:17 
Разумееется. Rust призван уменьшить количество ошибок только одного наиболее распространённого в системном программировании класса. Никто не утверждал, что Rust избавляет от всех классов ошибок.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру