The OpenNET Project / Index page

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



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

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

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

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

Оглавление

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


1. "Выпуск языка программирования Rust 1.51"  –31 +/
Сообщение от Аноним (1), 26-Мрт-21, 13:52 
просто лучший ЯП (сарказм)
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск языка программирования Rust 1.51"  +15 +/
Сообщение от Аноним (5), 26-Мрт-21, 13:56 
А почему сарказм?
Нельзя сказать, что он прям лучший среди языков (спойлер: таких нет, каждому свое, и на каждую задачу свое). Но, без сомнения, он хороший и перспективный, признан крупными компаниями, пятый год получает звание самого любимого языка на stackoverflow.
Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск языка программирования Rust 1.51"  +20 +/
Сообщение от Урри (ok), 26-Мрт-21, 14:13 
Сомнительное достижение быть "самым любимым" языком на площадке "я что-то делаю, а оно не работает, подскажите как правильно". Перед этим самым любимым языком на стековерфлоу был джаваскрипт.
Ответить | Правка | Наверх | Cообщить модератору

60. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от SlackJiralove (?), 26-Мрт-21, 15:07 
А в каком году JavaScript был самым любимым языком по мнению опрашиваемых посетителей Stackoverflow?
Ответить | Правка | Наверх | Cообщить модератору

305. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 28-Мрт-21, 19:53 
В Твиттере есть такая шутка: какой у вас самый любимый ЯП и почему это ДжаваСкрипт?
Ответить | Правка | Наверх | Cообщить модератору

83. "Выпуск языка программирования Rust 1.51"  +8 +/
Сообщение от Аноним (83), 26-Мрт-21, 15:40 
>Сомнительное достижение быть "самым любимым" языком на площадке "я что-то делаю, а оно не работает, подскажите как правильно".

На ЛОРе его тоже любят. Каждый тред про Rust -- лютый срач.

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

224. "Выпуск языка программирования Rust 1.51"  +6 +/
Сообщение от Аноним (-), 26-Мрт-21, 23:46 
Синтаксис тому очень способствует. Плюсовики over time - разгребают винтажные костыли, улучшают синтаксис. Растовики over time: обезьянят старые траблы плюсовиков.

На раст не надо проводить obfuscated code contest. Он в каждой первой программе. Охренеть как интуитивно и читаемо.

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

293. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (293), 28-Мрт-21, 01:58 
То что людей беспокоит то и важно и нужно
В мире раньше всех беспоколи три вещи секс. бухло и рок н рол
А теперь вот пришло время раста =)
Ответить | Правка | К родителю #83 | Наверх | Cообщить модератору

307. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (307), 28-Мрт-21, 20:41 
Определи, в какую категорию относится раст.
Ответить | Правка | Наверх | Cообщить модератору

42. Скрыто модератором  +1 +/
Сообщение от Аноним (42), 26-Мрт-21, 14:39 
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

69. "Выпуск языка программирования Rust 1.51"  +7 +/
Сообщение от garrick (?), 26-Мрт-21, 15:21 
А по TIOBE его даже FORTRAN и COBOL обгоняют
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

70. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от garrick (?), 26-Мрт-21, 15:22 
https://www.tiobe.com/tiobe-index//
Ответить | Правка | Наверх | Cообщить модератору

270. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Директор Федор (?), 27-Мрт-21, 16:08 
Индекс TIOBE не показатель популярности, он лишь показывает число запросов вида "<имя языка> programming language". Полумертвый D стоит на 24-том месте, тебе это не о чем не говорит?
И вообще рейтинг делается мартышками, ищущих вопросы по своему языку, например: "python language how to add int with string"
Ответить | Правка | К родителю #69 | Наверх | Cообщить модератору

306. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 28-Мрт-21, 20:39 
Это ты как вывел что он полумертвый?! Народ в ЕС набирали год назад, у нас в компании на нем пилили одну штуку, развивается бурно, Уолтер даже переносит фичи из Раста и модерн С++ (заисмствования всякие и пр.)
Ответить | Правка | Наверх | Cообщить модератору

327. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Настоящий Директор (?), 04-Апр-21, 12:16 
> Народ в ЕС набирали год назад, у нас в компании на нем пилили одну штуку,

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

> развивается бурно

Ага прям как фанаты Моргенштерна


> Уолтер даже переносит фичи из Раста и модерн С+

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

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

325. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Vindex (?), 01-Апр-21, 18:47 
Учитывая, как часто появляются новые пакеты для D в Dub registry, он будет иметь популярность в узких кругах ещё долго. Сам дома только на нём и пишу. Коммерчески значимые проекты тоже писал
Ответить | Правка | К родителю #270 | Наверх | Cообщить модератору

175. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (305), 26-Мрт-21, 20:16 
В целом сложно поспорить, но вот `признан крупными компаниями` - вот тут зацепочка. Чего они только не "признавали" :) Ну там сидит какой-то фанат, пропихнул идейку и вот уже в новостях `признан крупными компаниями`.

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

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

144. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от VINRARUS (ok), 26-Мрт-21, 18:30 
после shell
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

300. "У нас есть Rust, поэтому C++ больше не нужен."  –1 +/
Сообщение от tmplsr (?), 28-Мрт-21, 10:20 
https://swizard.livejournal.com/202744.html
У нас есть Rust, поэтому C++ больше не нужен.

Сие есть полное и исчерпывающее разъяснение, и окончательная жырная точка в спорах. Победителю достанется отведать овсянки из одной тарелки с манулом.

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

308. "У нас есть Rust, поэтому C++ больше не нужен."  +/
Сообщение от Аноним (307), 28-Мрт-21, 20:48 
вперёд, к диктатуре? ни шагу в сторону! прыжок на месте - расстрел!
Ответить | Правка | Наверх | Cообщить модератору

316. "У нас есть Rust, поэтому C++ больше не нужен."  +1 +/
Сообщение от Аноним (316), 29-Мрт-21, 14:12 
Страус труп, получается?
Ответить | Правка | К родителю #300 | Наверх | Cообщить модератору

2. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от InuYasha (??), 26-Мрт-21, 13:53 
fn main()
aaaargh! Думал, хоть в расте заставят писать полноценные заголовки с (void), но нет! >:(
Ответить | Правка | Наверх | Cообщить модератору

7. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (5), 26-Мрт-21, 13:57 
Это шутка?
Ответить | Правка | Наверх | Cообщить модератору

46. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от InuYasha (??), 26-Мрт-21, 14:44 
да.
Ответить | Правка | Наверх | Cообщить модератору

98. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Леголасemail (ok), 26-Мрт-21, 16:28 
aaaargh! nope
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от eganru (?), 26-Мрт-21, 14:08 
[i]fn main()
aaaargh! Думал, хоть в расте заставят писать полноценные заголовки с (void), но нет! >:([/i]
в Си:
при объявлении прототипа функции:
- функция c аргументом void подразумевает, что у функции нет аргументов.
- функция с пустые скобки аргументом подразумевает, что у функции произвольное число любых аргументов.

Очень часто люди, чтобы не путаться(особенно в сложных) при написании прототипа копируют имя функции и ее описание - вот Вам и прототип.

Естественно для пустые скобки в прототипе или void в прототипе это очень разные вещи.

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

3. "Выпуск языка программирования Rust 1.51"  +6 +/
Сообщение от Аноним (5), 26-Мрт-21, 13:54 
Хороший релиз
Долгих лет жизни языку
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск языка программирования Rust 1.51"  +8 +/
Сообщение от Аноним (14), 26-Мрт-21, 14:03 
Долгих лет жизни и большого объема памяти проекту!
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от InuYasha (??), 26-Мрт-21, 14:45 
Это значит, что он тормозной и жручий по памяти?
Ответить | Правка | Наверх | Cообщить модератору

73. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от НяшМяш (ok), 26-Мрт-21, 15:22 
Нет
Ответить | Правка | Наверх | Cообщить модератору

289. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (289), 28-Мрт-21, 00:10 
А на микроконтроллере с 16КБ флеша и 2КБ ОЗУ, где на стек 0x400 байт, и на кучу 0x200, получится?
Ответить | Правка | Наверх | Cообщить модератору

295. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от НяшМяш (ok), 28-Мрт-21, 02:27 
Например, вот так? https://www.avr-rust.com/
Ответить | Правка | Наверх | Cообщить модератору

127. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Конь (?), 26-Мрт-21, 17:39 
По потреблению памяти он на уровне C/C++
Ответить | Правка | К родителю #49 | Наверх | Cообщить модератору

159. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от InuYasha (??), 26-Мрт-21, 18:59 
Это был просто дружеский подкол на фразу с пожеланием )
Ответить | Правка | Наверх | Cообщить модератору

244. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (244), 27-Мрт-21, 05:39 
Местами, он даже быстрее С++, а где-то и чутка медленнее - +- паритет. Язык определенно заслуживает самого пристального внимания.
Ответить | Правка | К родителю #49 | Наверх | Cообщить модератору

166. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (307), 26-Мрт-21, 19:32 
> Долгих лет жизни языку

Конечно, пожелание пригодится, а то за 16 лет ещё не смогли стабилизировать его.

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

169. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от asdasd (?), 26-Мрт-21, 19:38 
Заврались вы батюшка. Стабильная 1.0 вышла в 2015, это было 6 лет назад, а первая публичная альфа в 2011-2012, то бишь за 3-4 года, а не за 16.
Ответить | Правка | Наверх | Cообщить модератору

240. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Аноним (307), 27-Мрт-21, 02:37 
А до 1.0 что было в промежутке 2006-2015?

> The language ... begun in 2006

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

268. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (268), 27-Мрт-21, 15:48 
Где взял 2006, там и прочитай - один чувак первые несколько лет в качестве хобби в свободное от работы и семьи время проектировал (не разрабатывал). Зачем тут ложь писать?
Ответить | Правка | Наверх | Cообщить модератору

285. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (307), 27-Мрт-21, 22:11 
> проектировал (не разрабатывал).

Известная ситуация, растаманы всегда проектируют, не разрабатывая :) у них одни пpoЭкты.

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

6. "Выпуск языка программирования Rust 1.51"  –9 +/
Сообщение от Аноним (6), 26-Мрт-21, 13:57 
Зачем они пишут копию плюсов? Не хотят учить плюсы?
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Аноним (5), 26-Мрт-21, 13:58 
Как плюсовик, могу сказать, что Раст не копия плюсов, спроектирован лучше и без тонны легаси, мешающие развитию языка.
Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Урри (ok), 26-Мрт-21, 14:14 
Уже с тонной заплаток поверх уже легаси.
Каждый релиз новые заплатки. Через годик два он станет намного, намного хуже плюсов.
Ответить | Правка | Наверх | Cообщить модератору

62. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от SlackJiralove (?), 26-Мрт-21, 15:10 
Аргументы в студию.
Ответить | Правка | Наверх | Cообщить модератору

198. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:04 
За:
https://kerkour.com/blog/the-biggest-threat-to-rust-sustaina.../

Против(?):
https://steveklabnik.com/writing/how-often-does-rust-change

Я не уверен, что "против" против, но там методология исследования разобрана в деталях, и результаты налицо, суди сам.

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

17. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (17), 26-Мрт-21, 14:05 
Какая же это копия плюсов? Классов у них, я так понял, нет. Можно структуры, но там полная опа с наследованием.
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

64. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (64), 26-Мрт-21, 15:14 
> Можно структуры, но там полная ООПа с наследованием.
Ответить | Правка | Наверх | Cообщить модератору

99. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (-), 26-Мрт-21, 16:29 
Куда этому поделию до плюсов. Ты чего ? Тут вон итераторы к семнадцатому году подвезли, радуйся :D
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

121. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Аноним (121), 26-Мрт-21, 17:23 
жыр с монитора потек
Ответить | Правка | Наверх | Cообщить модератору

162. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от iLex (ok), 26-Мрт-21, 19:11 
Не хотят по две недели трахаться с зависимостями каждый раз, когда нужно собрать проект на другой машине. Серьёзно, хуже плюсового тулчейна с зависимостями не работает вообще никто. Где ещё при сборке абсолютно любого крупного проекта организуется такой геморрой буквально на ровном месте? Попробуйте собрать любой мало-мальски крупный плюсовой проект с временем сборки свыше 8 часов, скажем TensorFlow, и вы уже через пару дней начнёте разговаривать исключительно матом и искренне возненавидите эти плюсы с их вечным шаманством в попытках хоть что-то собрать.
Доходит уже до смешного, когда для сборки проекта поднимают docker или иную подобную хрень с определённым набором библиотек и инструментов внутри, потому что нигде больше оно не соберётся (и даже там ухитряется падать, никогда не собираясь с первого раза).
В этом плане Rust выглядит просто чем-то совершенно божественным, потому что блин оно просто берёт и собирается! Оно само подтягивает все зависимости, если чего-то нет, и ничего шаманить не надо. А в C++ тулчейне это уже которое десятилетие осилить не могут.
Уж молчу про кросс-компиляцию, где трахотня с зависимостями возводится в куб. Попробуйте, скажем, собрать OpenCV-проект под винду, сидя в Linux. Это миссия из разряда невыполнимых.
П.С.: На почётном втором месте по дерьмовости в плане работы с зависимостями у нас Python. Это почти такое же дерьмо, как C++, никогда и ничего не запускается с первого раза, для проектов сложнее HelloWorld вечно требуется часами шаманить, выясняя, что и в каком порядке разворачивать и куда каких симлинков напихать, чтоб завелось.
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

196. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Урри (ok), 26-Мрт-21, 21:55 
Как я понял комментарий выше, iLex прославляет аналог maven и npm под названием rust. О самом языке ни слова.

Ну все как обычно - неосиляторы прославляют удачу по сборке своего хелловорлда.

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

223. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 26-Мрт-21, 23:44 
А потом к ним подключаются другие неосиляторы, вместо того, чтобы вкладывать свои усилия в ваш проект.

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

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

326. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Spiker01email (?), 01-Апр-21, 19:32 
>  П.С.: На почётном втором месте по дерьмовости в плане работы с зависимостями у нас Python. Это почти такое же дерьмо, как C++, никогда и ничего не запускается с первого раза, для проектов сложнее HelloWorld вечно требуется часами шаманить, выясняя, что и в каком порядке разворачивать и куда каких симлинков напихать, чтоб завелось.

"Плюсую". Не писал на Python-е ничего сложного на данный момент и против данного языка ничего не имею, как и за. Моя ситуация: На Linux-е устанавливал софт работающий с Python(из репозитариев), после этого перестал запускаться Terminator(Терминал который мне очень нравился и которым я постоянно пользовался). В итоге обновил Python, Обновил Terminator, попробовал поставить зависимости которые просит при запуске из терминала Terminator. В итоге он так и не запускается. Переехал на Kitty.

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

8. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Аноним (8), 26-Мрт-21, 13:57 
Забавный факт: в арчике пакет rust 1.50 весил 567мб, а 1.51 — 496мб. Доколе его вес будет так штормить?
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Alladin (?), 26-Мрт-21, 14:01 
Ставь rustup и не морочь мозги.

Да и ты сравниваешь не размер package, а его разжатый вид:)

Размер package: 80мб.

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

19. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Аноним (8), 26-Мрт-21, 14:11 
Я же пользуюсь растом в разжатом виде. Зачем мне обращать внимание на размер архива? ¯\_(ツ)_/¯
Ответить | Правка | Наверх | Cообщить модератору

13. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от data man (ok), 26-Мрт-21, 14:02 
clang + все зависимости не штормят?
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

20. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (8), 26-Мрт-21, 14:12 
Не знаю. Но gcc в порядке.
Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск языка программирования Rust 1.51"  +8 +/
Сообщение от A.Stahl (ok), 26-Мрт-21, 14:03 
Предлагаю округлить до 1 ГиБ и искусственно поддерживать это значение чтобы анонимы не пугались шторма. Их укачивает.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

23. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (8), 26-Мрт-21, 14:15 
По-твоему это совершенно нормально, что плагин к LLVM весит примерно столько же, сколько clang + llvm-libs + llvm?
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Конь (?), 26-Мрт-21, 17:18 
Это наверное со всеми зависимостями и исходниками, а сам раст весит около 5Mb
Ответить | Правка | Наверх | Cообщить модератору

110. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Последний из могикан (?), 26-Мрт-21, 16:53 
До ff жрущего 600-800мб привыкли и до этого тоже привыкнут.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

117. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (-), 26-Мрт-21, 17:13 
Не надо, палемун на системе с 512Мб на борту в три браузера по десятке вкладок шевелит только в путь.
Ответить | Правка | Наверх | Cообщить модератору

291. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (5), 28-Мрт-21, 00:45 
600-800 - это много?
У тебя там 2 ГБ ОЗУ что ли?
Ответить | Правка | К родителю #110 | Наверх | Cообщить модератору

10. "Выпуск языка программирования Rust 1.51"  +8 +/
Сообщение от Аноним (10), 26-Мрт-21, 13:59 
// Раньше для перебора
for item in array.iter().copied() {

// Теперь можно указать
for item in std::array::IntoIter::new(array) {

Помоему язык развивается в противоположенную от упрощения сторону.


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

11. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Аноним (5), 26-Мрт-21, 14:01 
Норм
for item in array.iter().copied() {
for item in IntoIter::new(array) {

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

16. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Аноним (16), 26-Мрт-21, 14:05 
foreach (var item in array)
Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск языка программирования Rust 1.51"  +17 +/
Сообщение от Филимон Осмотрительный (?), 26-Мрт-21, 14:15 
for (auto item : array)
{}

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

Почему злой и страшный С++ выглядит удобнее и понятнее Rust ?


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

48. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 26-Мрт-21, 14:44 
к плюсам не из-за этого претензии
Ответить | Правка | Наверх | Cообщить модератору

55. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Кир (?), 26-Мрт-21, 14:55 
Сколько ни спрашивал, все либо затрудняются сформулировать претензии к C++, либо несут ахинею. С учётом последних нововведений, C++ рулит и педалит остальные ЯП почти во всех областях применения.
Ответить | Правка | Наверх | Cообщить модератору

100. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 26-Мрт-21, 16:31 
Нововведения убили плюсы
Ответить | Правка | Наверх | Cообщить модератору

109. "Выпуск языка программирования Rust 1.51"  –4 +/
Сообщение от Аноним (109), 26-Мрт-21, 16:48 
Недавно на хабре видел статью человека, который устал пытаться писать на C++ без UB. Я пытался писать без UB, устал и забил. Теперь с покерфейсом пишу код с UB, потому что так и не нашел куда спрыгнуть. Человек, который не увидит в следующей функции UB, за которое ОСь может прибивать программу, не должен допускаться до C++.

size_t count_spaces(const std::string& str)
{
    size_t ret = 0;
    for (char c: str)
    {
        if (std::isspace(c))
            ++ret;
    }
    return ret;
}

Спойлер UB есть в описании isspace на en.cppreference.com

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

123. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Онаним (?), 26-Мрт-21, 17:32 
Ну в принципе ожидаемо. Особенно на хабре, как раз тот уровень.
Называется: надо читать описания-то.
Ответить | Правка | Наверх | Cообщить модератору

132. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (109), 26-Мрт-21, 17:59 
А поделитесь своими ощущениями от чтения стандарта по плюсам во время написания программы? Или вы даже из тех, кто помнит его наизусть, учитывая намек на разницу уровней? А то мой потолок - это стандарт чистых сей. При чтении плюсового, даже не всегда могу понять правильно ли понял прочитанное.
Ответить | Правка | Наверх | Cообщить модератору

143. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Кир (?), 26-Мрт-21, 18:23 
Читать стандарты надо, в общем-то, ДО написания программы. Простая аналогия: если ты словарь и грамматику китайского, скажем, языка начнешь читать только во время общения на оном, то много не наобщаешь, поверь.
Ответить | Правка | Наверх | Cообщить модератору

148. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (109), 26-Мрт-21, 18:41 
А те, кто не видят проблем в C++, стандарт читали? Запомнить я его не смог, перечитывать каждый раз запарился. Где чудо богатыри, которые могут выйти и сказать: "Пишу на C++ без UB, проблем никаких". Я от стандарта плюсов даже 2003 года помню сильно меньше половины. В основном то, что с сями пересекается.
Ответить | Правка | Наверх | Cообщить модератору

154. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Кир (?), 26-Мрт-21, 18:50 
Ты правда считаешь, что это проблемы именно C++? Похоже, у меня для тебя плохие новости... )))
Ответить | Правка | Наверх | Cообщить модератору

157. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от InuYasha (??), 26-Мрт-21, 18:58 
Достали шаблоны, многоэтажные конструкции с кучами двоеточий. Прешёл обратно на Си. Потому и не кусают. \(o_O)/
Ответить | Правка | К родителю #148 | Наверх | Cообщить модератору

168. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 19:37 
Шаблоны - прекрасная штука, если с умом готовить.
Особенно когда у тебя куча однотипных вещей для различных вложенных типов.
Ответить | Правка | Наверх | Cообщить модератору

199. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Урри (ok), 26-Мрт-21, 22:07 
Это и на си можно делать. Точнее на gcc расширении c, которое сто лет поддерживают и шланг и тайниси.
Правда, на плюсах это красивее выглядит.

Ну и да, под разные задачи разные инструменты, факт.

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

164. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 19:29 
Возьмите MaNGOS, попробуйте разобрать код. Попутно прокачаетесь :)
Ответить | Правка | К родителю #132 | Наверх | Cообщить модератору

167. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 19:36 
А так-то без хендбука под рукой лезть в дебри языков вообще смысла нет. Любых.
Ну и бОльшую часть нужного надо запомнить прежде, чем начинать писать что-либо серьёзно.
А всё, что постоянного использования не имеет - в хендбуке.
Ответить | Правка | К родителю #132 | Наверх | Cообщить модератору

133. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Филимон Мудрый (?), 26-Мрт-21, 18:02 
UB - само по себе не плохо и не хорошо. Это не ошибка. UB - это когда определяет не стандарт, а реализация.

Примерно тоже самое в нашей жизни: не всё определяется юридическими законами, а что-то просто здравым смыслом. Вы же не сетуете, что закон не расписывает вам подробно как срть в туалете, вам ведь хватает и здравого смысла ?

Конкретно в вашем примере, нужно просто прочитать документацию к isspace. Ещё можно почитать почему так сделано (что это даёт взамен)

Если вас печалит необходимость знать такие фишки языка (детали реализации), то посмотрите на это под другим углом: знание инструмента, который вы используете, повышает вашу квалификацию. А ваша квалификация это то, что не даёт бизнесу заменить вас дешёвой обезьянкой, работающей за еду.

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


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

155. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (109), 26-Мрт-21, 18:55 
Нет. Детали реализации это - unspecified behavior или implementation-defined behavior. Undefined behavior - это вот это вот:
Permissible undefined behavior ranges from ignoring the situation completely with unpredictable results, to behaving during translation or program execution in a documented manner characteristic of the environment (with or without the issuance of a diagnostic message), to terminating a translation or execution (with the issuance of a diagnostic message).
Ответить | Правка | Наверх | Cообщить модератору

212. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Онаним (?), 26-Мрт-21, 22:51 
Вообще UB при кривом исходном вводе - это нормально, и существует даже вне ЯП - в железе, в приложениях в целом. Где-то ловишь exception или прерывание исключения, где-то срач в логи и терминацию, где-то - вывод, вполне соответствущий вводу, но никуда далее не годный. C'est la vie.

И вообще Сначала мы загоняем в функцию, обрабатывающую данные как unsigned char, просто char, а потом удивляемся - ОЙ. А ЧОЭТООНО??!!!! БОЛЬНОЖЕ!!!

Это не оно, это руки. Изящно изогнутые.

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

135. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Кир (?), 26-Мрт-21, 18:10 
А для кого приведен пример на том же cppreference?


int count_spaces(const std::string& s)
{
    return std::count_if(s.begin(), s.end(),
                         [](unsigned char c){ return std::isspace(c); } // correct
                        );
}

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

153. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (109), 26-Мрт-21, 18:49 
Я привел пример для отсева абсолютно некомпетентных и пример того, что даже самая безобидная на вид функция может уронить программу. Плюсы - это минное поле, где ты примерно знаешь мины на участке где ходишь, при этом продолжаешь топтаться по нему каждый день. И знаешь, что вне участка полно мин, о которых не знаешь. Чтоб писать на плюсах надо 100% времени поддерживать 100% концентрацию. У меня вот есть проблема - не получается так.
Ответить | Правка | Наверх | Cообщить модератору

158. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Кир (?), 26-Мрт-21, 18:58 
"Трехколесный велосипед лучше мерседеса, потому что на нем вы никогда не въедете в столб на скорости 200 км/ч" Да, не въедете, потому что не разгонитесь до такой скорости. А так-то программисты обычно думают мозгом, когда пишут программы. Ну, как минимум некоторые )))
Ответить | Правка | Наверх | Cообщить модератору

228. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 27-Мрт-21, 00:17 
> А так-то программисты обычно думают мозгом, когда пишут программы.

Вы можете часть своего рабочего времени искать уб при подсчёте пробелов (не факт, что вы найдёте проблему оперативно, вам может тупо не хватить везения).

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

> Трехколесный велосипед лучше мерседеса

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

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

195. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Филимон Участливый (?), 26-Мрт-21, 21:19 
Это плохо. Если с концентрацией проблемы первым делом проверьте уровень кортизола и пейте витамины группы Б - при их дефиците у организма возникают проблемы с выработкой тормозящих нейромедиаторов. Наврятли вам Rust с этим поможет.

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

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

213. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Онаним (?), 26-Мрт-21, 22:55 
Если концентрацию поддерживать "не получается" - лучше сразу сменить профессию.
Ответить | Правка | К родителю #153 | Наверх | Cообщить модератору

163. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Vkni (ok), 26-Мрт-21, 19:13 
> Я пытался писать без UB, устал и забил. Теперь с покерфейсом пишу код с UB, потому что так и не нашел куда спрыгнуть.

Рекомендую прочитать статью MA Ertl'а "What every compiler writer should know about programmers". В ней, в частности, рассказывается, что исторически UB использовались для заточки под конкретный компилятор и систему. И, в общем, язык системный => написание "generic" кода, который системно независим, это выход за пределы области применения C.

К сожалению, это конфликтует с желанием компиляторщиков использовать UB для чего угодно. :-(

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

216. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (109), 26-Мрт-21, 23:09 
Спасибо за статью. Истоки UB я знаю и с рассуждениями по ходу статьи согласен. Когда я начинал программировать, я выделывался с оптимизациями. А теперь мне нужен способ написать код, который будет гарантированно одинаково работать под STM32, Linux(ARM и x64) и Windows(x86) независимо от компилятора. И я его не вижу. Обмазал всё тестами, включил предупреждения на почти максимум, прогнал через анализаторы, а гарантий то нет. Мне нравится идея раста, что если хочешь, пиши unsafe и выделывайся. Но сам он как-то не зашел.
Ответить | Правка | Наверх | Cообщить модератору

260. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от fidoman (ok), 27-Мрт-21, 10:44 
Потому что unsigned char надо использовать. Вроде бы не такая сложная головоломка, чтоб прям "спрыгивать".
Ответить | Правка | К родителю #109 | Наверх | Cообщить модератору

267. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (109), 27-Мрт-21, 15:31 
Это просто одна из мин, на которой я подорвался. Мне о ней лет 10 назад сказал MSVC с отладочным рантаймом, тогда я даже не задумался, что что-то не так если функция не модифицирующая строку роняет программу. Спрыгнуть хочу потому, что концентрацию теряю, ну не больше 10 раз в год. А после каждого такого случая минимум 3 дня: думаю как может происходит странная херня о которой сообщили, листаю коммиты, перечитываю исходники... Странная херня не обязана начать происходить сразу. Вот есть проект в котором больше 1МБ исходных кодов и ищи как хочешь, стрелять то может всё. Крайне боюсь, что когда-нибудь придется иметь дела с проектами больше 10МБ. Если знаешь, что не потянешь, лучше спрыгнуть.
Ответить | Правка | Наверх | Cообщить модератору

273. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от fidoman (ok), 27-Мрт-21, 17:31 
Она реально роняет? Интересно бы в либе код посмотреть, как им это удаётся)
Ответить | Правка | Наверх | Cообщить модератору

111. "Выпуск языка программирования Rust 1.51"  +6 +/
Сообщение от боня (?), 26-Мрт-21, 16:56 
> Сколько ни спрашивал, все либо затрудняются сформулировать претензии к C++.

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

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

124. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 17:33 
Полиморфные указатели на абстракции от структур :D
Ответить | Правка | Наверх | Cообщить модератору

126. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 17:34 
(всерьёз воспримется только теми, кто понимает, как оно внутри работает)
Ответить | Правка | Наверх | Cообщить модератору

134. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Sw00p aka Jerom (?), 26-Мрт-21, 18:08 
foreach ($arr as $key => $value)
{
}

куда "красивее", пхпешники поддержат :)

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

176. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Варенье (?), 26-Мрт-21, 20:17 
Только у вас нарушение PSR-12 (секция 5.5), фигурная скобка в foreach должна быть на той же строке, что и закрывающая круглая скобка
Ответить | Правка | Наверх | Cообщить модератору

207. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Sw00p aka Jerom (?), 26-Мрт-21, 22:24 
> Только у вас нарушение PSR-12 (секция 5.5), фигурная скобка в foreach должна
> быть на той же строке, что и закрывающая круглая скобка

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

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

215. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 23:07 
У меня часто складывается ощущение, что в написании PSR отчасти участвовали неадекваты.
Нет, там очень много здравого, чему стоит следовать.
Но вот эти MUST типа "There MUST NOT be more than one statement per line"
Ага, вот прямо сейчас разбежался 10-15 переменных для цикла инициализировать портянкой по пять букв в строчке.
То же самое со скобками. Здесь конечно лучше наверх вытащить. Но в ряде случаев действительно читабельнее, когда открывается на своей строке.
Ответить | Правка | Наверх | Cообщить модератору

217. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Онаним (?), 26-Мрт-21, 23:12 
Потом открываешь какой-нибудь моднявый прожектик килобайт в 25 для вызова внешней утилиты с тремя параметрами в 5-10 классов, видишь там нечитабельное говно, сплошь состоящее из PSR, закрываешь, и пишешь один класс в три килобайта, делающий больше и правильнее, и куда осязаемее (за отсутствием необходимости помнить про те самые (5-10)-1 классов из 50 строчек, 3/4 из которых - скобки, отступы и комментарии), чем вот та самая портянка.
Ответить | Правка | Наверх | Cообщить модератору

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

214. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 26-Мрт-21, 22:56 
Поддерживаю.
PSR идут в задницу, но да, скобочку лучше таки утащить в первую строку.
Индекс нам там тоже в исходной задаче вроде не нужен.

foreach ($array as $item) {
}

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

225. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Sw00p aka Jerom (?), 26-Мрт-21, 23:49 
> скобочку лучше таки утащить в первую строку.

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


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

253. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 27-Мрт-21, 09:18 
Согласен, дело вкуса. Кроме вкуса ещё есть дело читабельности.
Я например легко читаю почти весь код, даже откровенный говнокод - кроме кода, написанного строго по PSR... :D Возможно потому, что нынешние мониторы широки вширь, но узки ввысь, и листать километровую портянку задалбывает.
Ответить | Правка | Наверх | Cообщить модератору

254. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 27-Мрт-21, 09:22 
А вообще чессгря с годами всё больше уверенности, что PHP занимаются практики, а не теоретики.

Даже на этом примере. Очевидное foreach. Обычное для C-подобных языков открытие блока кода. Все переменные сразу видны - с ключевыми словами не спутаешь никак. as в нужном месте, сразу понятно, кто есть кто. Ну и $key => $value, учитывая, что значения хешей к ключам именно через => объявляются, тоже вполне логично.

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

255. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Онаним (?), 27-Мрт-21, 09:24 
То же

for item in IntoIter::new(array)

ШТО ЭТО, БЛ***???
IntoIter - это класс какой-то? Статический вызов new - ну, тут вроде понятно.
А array что такое? Ключевое слово именования типа? То есть IntoIter::new принимает имя типа на входе?
БРРРГГГ...

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

256. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Онаним (?), 27-Мрт-21, 09:26 
std::array::IntoIter::new(array) же - это вообще лютый Ц
Ответить | Правка | Наверх | Cообщить модератору

275. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от burjui (ok), 27-Мрт-21, 19:58 
Уже давно можно писать "for item in &array".
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

54. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (54), 26-Мрт-21, 14:55 
// Раньше для перебора
for item in array.iter().copied() {

// Теперь можно указать
for item in array.iter().copied() {
ИЛИ
for item in std::array::IntoIter::new(array) {

Поправил, не благодари.

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

125. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от пох. (?), 26-Мрт-21, 17:34 
Я одного только не пойму - вы эти бредовые заклинания "std::array::IntoIter::new" наизусть вызубрили все стопиццоттыщ, или каждый раз гуглите когда надо просто перебрать массив?

(нет, array.iter().copied() ничем не лучше, разумеется)

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

138. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (138), 26-Мрт-21, 18:20 
Просто кури https://doc.rust-lang.org/std/index.html
Ответить | Правка | Наверх | Cообщить модератору

171. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (307), 26-Мрт-21, 19:43 
> Просто кури

Что ещё можно ждать от растаманов...

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

221. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от пох. (?), 26-Мрт-21, 23:35 
Спасибо, я лучше пока так, на травке посижу.

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

261. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (261), 27-Мрт-21, 12:27 
А мне кажется синтаксическим бредом С++, дальше что? Мне срать язык, потому что не нравится синтаксис?
Как тема про раст, так сразу дискуссии о нужности, полезности и тщетности бытия.
Ответить | Правка | К родителю #125 | Наверх | Cообщить модератору

107. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Чума (?), 26-Мрт-21, 16:38 
for i in array {
  // ...
}
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

197. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Ordu (ok), 26-Мрт-21, 21:59 
> Помоему язык развивается в противоположенную от упрощения сторону.

Не, тут пример показывает не простоту, а возможность. into_iter реально не хватало для array, потому что если хочется сделать что-то типа:

    ...
    .map(|arr| arr.into_iter())
    .flatten()
    .collect();


То это нифига не работало, поскольку arr никак в into_iter, а arr.iter() -- это итератор, который ссылается на arr, и если arr прекращает существовать, то ссылка оказывается висящей. Здесь же, arr существует только внутри замыкания передающегося в map, и собственно фишка в том, чтобы итератор пожил подольше, чтобы все эти итераторы можно было бы flatten в один единый итератор по всем элементам, чтобы потом сделать collect.

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

200. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 22:12 
Охренеть какие сложности просто для того, чтобы обработать массив.

Сразу возникает вопрос - а почему не сделать было сразу нормальную итерацию по массивам? Почему надо навешивать очередную заплатку поверху?

Впрочем, вопрос риторический.

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

208. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:42 
> Сразу возникает вопрос - а почему не сделать было сразу нормальную итерацию
> по массивам? Почему надо навешивать очередную заплатку поверху?

Это безопасность. Если в коде выше заменить into_iter() на iter(), то borrow-checker пошлёт тебя куда подальше, потому как итератор содержит в себе ссылку на локальный массив лежащей в переменной-аргументе arr, но после выхода из лямбды локальный массив перестанет существовать, и получается, что пытаясь сделать такое, ты пытался вернуть указатель на локальную переменную.

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

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

252. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (252), 27-Мрт-21, 08:49 
А все потому что в новости не удосужились нормально объяснить.
Ответить | Правка | Наверх | Cообщить модератору

269. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 27-Мрт-21, 16:02 
> А все потому что в новости не удосужились нормально объяснить.

Мне нормально. А тем, кто не понимает, зачем это надо, явно это не надо. Ну, реально, я понял с первого взгляда в чём фишка благодаря тому, что я как-то пытался отрисовать палитрованое изображение, заменяя номера цветов на цвет из палитры, добавляя к нему alpha компоненту, и впоролся в то, что когда я итератор по номерам цветов из палитры превращаю в итератор по rgba четвёркам, я потом не могу из этого итератора по [u8; 4] сделать итератор по итераторам по [u8; 4]. Надо было либо писать что-то типа IntoIter для [u8; 4], либо закапывать функциональщину и переписывать императивно. Кстати императивно лучше вышло, потому что таким образом я смог предвыделить память сразу под все четвёрки rgba. Но не так идеоматично.

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

310. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Онаним (?), 28-Мрт-21, 21:59 
... когда я итератор по номерам цветов из палитры превращаю в итератор по rgba четвёркам, я потом не могу из этого итератора по [u8; 4] сделать итератор по итераторам по [u8; 4] ...

На этом месте стоило перестать курить раст, взять C, и сделать всё по-человечески, без итераторов.

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

311. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Онаним (?), 28-Мрт-21, 22:00 
(я охренел только от одного описания процесса, на код кмк там лучше даже не смотреть уже)
Ответить | Правка | К родителю #269 | Наверх | Cообщить модератору

25. "Выпуск языка программирования Rust 1.51"  +15 +/
Сообщение от White Crow (?), 26-Мрт-21, 14:17 
Для тех, кому ненужен низкоуровневый доступ, есть Go.

Для чего форсят это ржавое убожество, мне совершенно непонятно.

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

32. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (-), 26-Мрт-21, 14:25 
Просто ты упоротый технарь и совсем не понимаешь, что в айти решает бабло, а не технологии.
Ответить | Правка | Наверх | Cообщить модератору

43. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от White Crow (?), 26-Мрт-21, 14:40 
А ты, я смотрю, философ.
Ответить | Правка | Наверх | Cообщить модератору

101. "Выпуск языка программирования Rust 1.51"  +6 +/
Сообщение от Аноним (-), 26-Мрт-21, 16:32 
про технаря ты погорячился
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

113. "Выпуск языка программирования Rust 1.51"  +7 +/
Сообщение от Gemorroj (ok), 26-Мрт-21, 17:00 
go и технарь в 1 предложении? молодежь совсем оборзела.
гугель и go - это не бабло, а мозила и раст - это бабло? яснопонятно.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

136. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от White Crow (?), 26-Мрт-21, 18:14 
>go и технарь в 1 предложении?

Я на этом на пишу, если что.

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

139. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (138), 26-Мрт-21, 18:20 
Зачем сборщик мусора на уровне низком уровне?
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

140. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (138), 26-Мрт-21, 18:21 
Go и системщина не очень совместимы)
Ответить | Правка | Наверх | Cообщить модератору

178. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 26-Мрт-21, 20:20 
А с чем оно вообще совместимо ? С сотней гигов памяти ?
Ответить | Правка | Наверх | Cообщить модератору

290. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (289), 28-Мрт-21, 00:14 
Вот как раз нет. За счет внутренней многопоточности, которая быстрее системной и экономнее и делается одним оператором. Потому и на серваки ставят, чтобы кушало меньше в десятки тысяч потоков.
Ответить | Правка | Наверх | Cообщить модератору

297. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (297), 28-Мрт-21, 08:16 
А ну да, корутины же только в го есть
Ответить | Правка | Наверх | Cообщить модератору

271. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Директор Федор (?), 27-Мрт-21, 16:47 
А зачем он вообще нужен? На нем ведь только микросервисы делают, да простые консольные утилитки
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

26. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Анонимemail (26), 26-Мрт-21, 14:17 
Если Rust и Go лучшие языки программирования, почему Firefox и Chrome сделаны на c++?
Ответить | Правка | Наверх | Cообщить модератору

27. "Выпуск языка программирования Rust 1.51"  –5 +/
Сообщение от Fracta1L (ok), 26-Мрт-21, 14:20 
Из первого С++ уже выпиливают, из второго - планируют
Ответить | Правка | Наверх | Cообщить модератору

31. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Аноним (14), 26-Мрт-21, 14:25 
Нужно будет запланировать докупить оперативочки.
Ответить | Правка | Наверх | Cообщить модератору

36. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Урри (ok), 26-Мрт-21, 14:28 
Бхахахахах. Пока что выпилили сам раст, на мороз.
Ответить | Правка | К родителю #27 | Наверх | Cообщить модератору

37. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Филимон Проницательный (?), 26-Мрт-21, 14:28 
Вот Столлмана выпиливают из фонда СПО ... Если что-то откуда-то выпиливают, это, не факт, что к добру.
Ответить | Правка | К родителю #27 | Наверх | Cообщить модератору

88. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Аноним (88), 26-Мрт-21, 15:47 
> Из первого С++ уже выпиливают, из второго - планируют

Нет, и в мыслях ни у кого небыло и не будет.

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

90. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от пакемон (?), 26-Мрт-21, 15:49 
> Из первого С++ уже выпиливают, из второго - планируют

У тебя опять памяти не хватило или раст рухнул?

Падать твоё гавно уже перетало? Утечки починили?

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

Эпик фейл года, падает не прога криво написанная на языке, а падает сам язык. Вер безопасности.

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

97. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 26-Мрт-21, 16:21 
>> в коде аналог сишного
>> fprintf(stderr,"что-то пошло совсем не так! капец!"); exit(1);
> Эпик фейл года, падает не прога криво написанная на языке, а падает
> сам язык.

Эпик обсер года от очередного "Ыксперта".

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

103. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от gcc (??), 26-Мрт-21, 16:34 
>>> в коде аналог сишного
>>> fprintf(stderr,"что-то пошло совсем не так! капец!"); exit(1);
>> Эпик фейл года, падает не прога криво написанная на языке, а падает
>> сам язык.
> Эпик обсер года от очередного "Ыксперта".

Обделался :D fprintf не упал, exit не упал. Хаааа. Rustтун ыкпыртызыт си оборжатся.

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

105. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от gcc (??), 26-Мрт-21, 16:35 
>>>> в коде аналог сишного
>>>> fprintf(stderr,"что-то пошло совсем не так! капец!"); exit(1);
>>> Эпик фейл года, падает не прога криво написанная на языке, а падает
>>> сам язык.
>> Эпик обсер года от очередного "Ыксперта".
> Обделался :D fprintf не упал, exit не упал. Хаааа. Rustтун ыкпыртызыт си
> оборжатся.

Ой, в слове "ыкпыртызыт" пропустилось "с". Должно быть "ыкcпыртызыт" - это раст с памятью поработал.

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

108. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (108), 26-Мрт-21, 16:39 
>>>> panic!("OOB");
>>>> Macro std::panic
>>>> This allows a program to terminate immediately and provide feedback to the caller of the program. panic! should be used when a program reaches an unrecoverable state.
>>>> в коде аналог сишного
>>>> fprintf(stderr,"что-то пошло совсем не так! капец!"); exit(1);
> Обделался :D fprintf не упал, exit не упал. Хаааа. Rustтун ыкпыртызыт си
> оборжатся.

Сам написал бессмылицу, сам ее оспорил. Ыксперд, че.

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

202. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Урри (ok), 26-Мрт-21, 22:16 
Там выше объяснили, что чтобы не падало, надо новую заплатку на язык повесить. точнее ее как раз привесили. А сколько еще всего надо сделать... ммм... не описать.

--cut--
into_iter реально не хватало для array, потому что если хочется сделать что-то типа:

    .map(|arr| arr.into_iter())
    .flatten()
    .collect()


То это нифига не работало, поскольку arr никак в into_iter, а arr.iter() -- это итератор, который ссылается на arr, и если arr прекращает существовать, то ссылка оказывается висящей. Здесь же, arr существует только внутри замыкания передающегося в map, и собственно фишка в том, чтобы итератор пожил подольше, чтобы все эти итераторы можно было бы flatten в один единый итератор по всем элементам, чтобы потом сделать collect.
--cut--

Я, как старый лиспер и функциональщик до мозга костей, в полном ах_е.

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

211. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:49 
> Я, как старый лиспер и функциональщик до мозга костей, в полном ах_е.

Ах, вот оно что, лиспер? Ну дык в лиспе у тебя сборка мусора, там не надо следить за временем жизни объектов, потому что gc за тебя последит. В таких языках как C/C++/Rust это так не работает.

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

92. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от spell checker (?), 26-Мрт-21, 15:53 
> Из второго Rust уже выпиливают, в первом - не планируют внедрять.

Поправил. Не благодари.


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

141. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (138), 26-Мрт-21, 18:22 
Почему же? Все новости об обратном говорят.
Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск языка программирования Rust 1.51"  +7 +/
Сообщение от Аноним (-), 26-Мрт-21, 14:24 
> Если Rust и Go лучшие языки программирования, почему Firefox и Chrome сделаны на c++?

Если C++ такой крутой ЯП, то почему OpenNet на Perl?

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

38. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Урри (ok), 26-Мрт-21, 14:29 
Потому что перл лучше с++. А ты не знал?
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Филимон Проницательный (?), 26-Мрт-21, 14:31 
Perl отличный язык и не менее крут чем С++. А после того, как все гвнкдры свалили с него в PHP, так вообще сказка
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

93. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от spell checker (?), 26-Мрт-21, 15:55 
> Perl отличный язык и не менее крут чем С++. А после того,
> как все гвнкдры свалили с него в PHP, так вообще сказка

Истина

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

52. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от kusb (?), 26-Мрт-21, 14:53 
А UTF лучше КОИ8?
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

78. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (78), 26-Мрт-21, 15:33 
Хуже. Имя файла в два раза короче.
Ответить | Правка | Наверх | Cообщить модератору

128. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Онаним (?), 26-Мрт-21, 17:43 
С чего бы это, если оно латиницей и цифрами?
Ну и да, запиши мне な в KOI8.
Ответить | Правка | Наверх | Cообщить модератору

173. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 26-Мрт-21, 19:56 
> な в KOI8

ISO 3602: "na"

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

187. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Онаним (?), 26-Мрт-21, 20:41 
"na" - это то, куда с такой записью стоит пройти.
Ответить | Правка | Наверх | Cообщить модератору

142. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (138), 26-Мрт-21, 18:22 
Потому что opennet желтый) и духом из 90х))
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

264. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (305), 27-Мрт-21, 12:56 
вспомнию с ностальгией инет 90х - дружелюбие и все-просто-работает. Без поганого Жабоскрипта кек
Ответить | Правка | Наверх | Cообщить модератору

160. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от InuYasha (??), 26-Мрт-21, 19:02 
> Если C++ такой крутой ЯП

Крутая кривая познания? )

> почему OpenNet на Perl?

Потому что, очевидно, автор его знал.

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

35. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Аноним (35), 26-Мрт-21, 14:27 
Потому что уже сделаны
Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

265. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от anonymous (??), 27-Мрт-21, 14:22 
Осмелюсь предположить, что эти браузеры появились раньше, чем rust и go.
Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

29. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (29), 26-Мрт-21, 14:25 
Сейчас налетят растохейтеры
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от DildoZilla (?), 26-Мрт-21, 14:26 
Даёшь Rust++ с обобщёнными асинхронными абстрактными шаблонами полиморфных классов!
Ответить | Правка | Наверх | Cообщить модератору

174. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 26-Мрт-21, 19:58 
Растаманы ещё через 15 лет обнаружат, что сделали ещё один С++
Ответить | Правка | Наверх | Cообщить модератору

229. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 27-Мрт-21, 00:21 
ну и пусть, один раз живём. И пока язык на начальной стадии, работать с ним в удовольствие
Ответить | Правка | Наверх | Cообщить модератору

241. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 27-Мрт-21, 02:41 
> один раз живём

Это тебе кто сказал?

> язык на начальной стадии

Ага, начальная стадия тянется с 2006-го года.

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

246. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от боня (?), 27-Мрт-21, 07:23 
> Ага, начальная стадия тянется с 2006-го года.

На википедии написано, что язык появился 7 июля 2010 года.

Если перейти по сноске, то там вот такое письмо https://mail.mozilla.org/pipermail/rust-dev/2010-July/000001...

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

284. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 27-Мрт-21, 21:35 
> 2010

Вы уж определитесь, то говорите, что в 2015, то в 2010. Но разработка начата, почему-то, в 2006-ом.

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

299. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 28-Мрт-21, 08:48 
> Вы уж определитесь, то говорите, что в 2015, то в 2010. Но разработка начата, почему-то, в 2006-ом.

Считайте как как вам выгодно. Для утверждения, что "языку уже 15 лет, и он нинужен" 2006 год подходит отлично.

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

287. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от anonimous (?), 27-Мрт-21, 23:26 
>На википедии написано, что язык появился 7 июля 2010 года.

Rust (programming language) - Wikipedia
https://en.wikipedia.org › wiki › Rust_(programming_l...
History — The language grew out of a personal project begun in 2006 by Mozilla employee Graydon Hoare, who stated that the project was possibly named after the rust family of fungi. Mozilla began sponsoring the project in 2009 and announced it in 2010.

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

247. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от боня (?), 27-Мрт-21, 07:25 
> Ага, начальная стадия тянется с 2006-го года.

Кстати, с другой стороны, если за 15 лет (по вашему мнению) из языка не сделали монстра - то, думаю, уже и не сделают

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

34. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Урри (ok), 26-Мрт-21, 14:27 
Очередные заплатки к очередным граблям.

Вангую появление нового языка "новыйязык", который вырастет на трупе раста и, учтя все его проявившиеся грабли, возможно, действительно станет заменой монструозному с++.

Вот почему бы расту не сделать было так? Почему бы не изучить ошибки D, например? Нет, они сваяли на коленке какую-то поделочку и теперь с завидной ослиной упорностью обвешивают ее очередными заплатками.

> Стабилизированы макосы "ptr::addr_of!" и "ptr::addr_of_mut!", позволяющие создавать raw-указатели для невыровненных полей.

Не прошло и, сколько, 14 лет для полноценной имплементации такой базовейшей вещи?

Кстати, растаманы. А не подскажете зачем макросы выделять отдельно от функций значком "!"? Какая в этом практическая польза, помнить что макрос а что нет? А то у меня только один вред в голове возникает - кроме названия метода почему-то обязательно запоминать макрос он или нет.

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

51. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (51), 26-Мрт-21, 14:52 
Тогда когда язык сам ничего не позволяет приходится пихать в него все возможные API и макросы чтобы хоть что-то на нем писать.
Ответить | Правка | Наверх | Cообщить модератору

53. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 26-Мрт-21, 14:53 
> Какая в этом практическая польза, помнить что макрос а что нет?

да

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

89. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (89), 26-Мрт-21, 15:49 
А зачем ?
Ответить | Правка | Наверх | Cообщить модератору

161. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от InuYasha (??), 26-Мрт-21, 19:04 
Чтобы "Life of people who have no F12 (Go to definition) key matters!"
Ответить | Правка | Наверх | Cообщить модератору

249. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от боня (?), 27-Мрт-21, 07:36 
> Чтобы "Life of people who have no F12 (Go to definition) key matters!"

Не нашёл статьи с таким названием. Или зачем вы в кавычках и по английски написали?

Чтобы вам было менее понятно читать ответ - напишу на украинском:

Для налагодження метапрограмирування програміст використовує метабрейкпоінти. (представляєт, що поставiв брейкпоінт)

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

286. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от InuYasha (??), 27-Мрт-21, 22:22 
А программiруете вы, наверное, тоже на украiнском ) Мне даже страшно представить ваш аналог 1С /(o_o)\

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

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

56. "Выпуск языка программирования Rust 1.51"  +5 +/
Сообщение от Аноним (56), 26-Мрт-21, 14:56 
> учтя все его проявившиеся грабли, возможно, действительно станет заменой монструозному с++

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

> Кстати, растаманы. А не подскажете зачем макросы выделять отдельно от функций значком "!"? Какая в этом практическая польза, помнить что макрос а что нет? А то у меня только один вред в голове возникает - кроме названия метода почему-то обязательно запоминать макрос он или нет.

Гугли про гигиеничность макросов. У Rust гигиеничные макросы, в отличие от C или C++. Восклицательный знак не имеет прямого отношения к гигиеничности, но это просто часть здоровой взрослой практики: отделять вызов макроса от вызова функции, потому что семантически это разные вещи, а если выдавать одно за другое, это может приводить к неверной интерпретации кода программистом.

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

66. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:17 
> Язык спроектирован так, что может позволять себе удалять устаревшие и плохо спроектированные фичи без потери обратной совместимости.

То-есть я могу свободно собрать и запустить код десятилетней давности? Ню-ню.

> Гугли про гигиеничность макросов. У Rust гигиеничные макросы, в отличие от C или C++. Восклицательный знак не имеет прямого отношения к гигиеничности

Зачем гуглить гигиеничность, если гигиеничность к расту отношения не имеет? В свою очередь предлагаю погуглить то же самое по отношению к древней-предревней scheme. Вот там "!" действительно очень важен в контексте кода.


> но это просто часть здоровой взрослой практики: отделять вызов макроса от вызова функции, потому что семантически это разные вещи

Что-что семантически разные вещи? write и writeln! - семантически разные вещи? Муа-ха-ха-ха-ха-ха-ха!


> а если выдавать одно за другое, это может приводить к неверной интерпретации кода программистом.

Чем write отличается от writeln!, что без восклицательного знака ты как программист неверно проинтерпретируешь код? Ничем.

В scheme, на которую я выше кивал, это действительно важно. Потому что в первую очередь язык функциональный и поощряет функциональное программирование где, на секунду, чистота функций очень важна. Потому что чистые функции можно вычислять в любом порядке и любым количеством, а нечистые - нельзя. Поэтому в схеме set! с восклицательным знаком (чтобы не забывали), а let - без.

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

72. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (56), 26-Мрт-21, 15:22 
> гигиеничность к расту отношения не имеет

Лол, окей. Мне че-то лень с тобой спорить. На самом деле не первый раз пересекаемся и я уже знаю, каких надменных софизмов от тебя ждать, так что сэкономлю свое время на этот раз. Ты задал вопрос, я ответил - дальше делай с этой инфой и относись к ней что хочешь, все свободные люди.

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

76. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:31 
Слив, как говорится, засчитан.

Смею предположить, что из-за этого вот моего вопроса:

>> это просто часть здоровой взрослой практики: отделять вызов макроса от вызова функции, потому что семантически это разные вещи
> write и writeln! - семантически разные вещи?

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

84. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Аноним (84), 26-Мрт-21, 15:41 
Умнее слиться в споре, где побеждают не аргументами и здравым смыслом, а напором и аппеляцией к одобрению большинства местной аудитории :)

А вопрос я проигнорил, потому что он непонятен. В-первых, неточен. Под write понимается std::io::Write::write или может std::fs::write? В любом случае, если ты имел в виду какую-то фнкцию, то да, это совершенно разные вещи, потому что, макрос и функция - это разные вещи (внезапно).

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

137. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Урри (ok), 26-Мрт-21, 18:14 
Хм, непонятен вопрос "чем write и writeln! семантически разные вещи?".
Ну ок.

> Под write понимается std::io::Write::write или может std::fs::write...?

Совершенно без разницы, потому что _семантически_ эти функции ничем не отличаются.

Разговор шел и идет о том, что в расте была введена (и до сих пор используется) бессмысленная и, по большому счету, вредная сущность "!", как обозначение макросов.

Семантически, макросы ничем, никогда и никак не отличаются от функций. Макросы и функции - это одно и то же. Есть аргументы на вход, есть некое действие, есть результат на выход. В середине черный ящик.

Программист программирует с помощью языка, а не для языка. Идеальный язык программирования вообще позволяет писать человеческим языком что программисту надо и переводит его слова в последовательность команд процессору.

Так было во времена лиспа, так осталось в современные времена.

В языке С++ реализация правильная. Модификатор constexpr превращает функцию в макрос без каких-либо переделок, потому что это одно и то же (при условии, конечно же, что компилятор с этим может справиться).

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

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

Характерный пример: write - печать, writeln! - печать с переводом строки. Программисту надо знать только одно - что эти функции делают, ему не надо знать как эта функция реализована в библиотеке - макросом, функцией, на ассемблере или через виртуальную машину. Ему надо только знать что эта функция делает и настолько эффективно.

Если бы, повторяю, если бы функция write была чистой функцией, а функция writeln ею не была, тогда с целью облегчения жизни функциональщику стоило бы ее как-то выделять. И никаких претензий к этому бы не было.

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

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

191. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (191), 26-Мрт-21, 20:55 
>Разговор шел и идет о том, что в расте была введена (и до сих пор используется) бессмысленная и

#define TRUE FALSE //счастливой отладки

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

274. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 27-Мрт-21, 18:53 
> Потому, что это одна из многих вещей, которая делает раст плохим языком

не для вас его роза цвела, поймите уже

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

317. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Cykooz (ok), 29-Мрт-21, 14:58 
Если для вас макросы и функции это одно и то же, то может расскажете как в том же C++ или C сделать именно функцию, которая вызывалась бы похожим образом:

lisp!(
defun is_whitespace ((b u8)) bool
    (match b
        (0x20 | 0x09 | 0x85 | 0x0a | 0x0b | 0x0c | 0x0d => (true))
        (_ => (false) ))
);

Это пример использования Rust-макроса для lisp-like DSL.

writeln! - это совсем не функция и в принципе не сможет в Rust стать функцией ни какими constexpr. Просто потому, что в Rust функции не могут принимать переменное число аргументов. А макросы могут "эмулировать" передачу переменного числа аргументов. Что собственно и делается в writeln!, и что отличает её от абстрактной функции write.

Макросы в Rust - это инструмент для генерации кода, и не обязательно, что полученный код будет эквивалентен вызову аналогичной функции. Например макрос сможет сгенерировать код с описанием структуры, функции или чего-то ещё.

А ещё от функции можно получить ссылку, а от макроса - нельзя.

И с макросами в Rust даже не обязательно использовать именно круглые скобки для передачи "аргументов" - можно фигурные или квадратные (например vec![0; 10] - вот как тут убрать восклицательный знак?).

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

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

318. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 29-Мрт-21, 17:42 
Вы не понимаете, что значит "семантически"? А что такое "алгоритмизация" знаете?

То, что вы написали никакого отношения к программированию не имеет. Зато имеет отношение к трансляции - переводу из одного представления (например, на языке rust) в другое (например, на языке asm).

Только вот в чем засада - трансляцией уже более 40 лет занимаются трансляторы(компиляторы), причем очень успешно. Это не работа человека. Это, в данном случае, работа компилятора rust.

А работа человека - перевести задачу в алгоритм. И хороший программист от гоbнoкодера отличается тем, что он умеет переводить задачу в алгоритм, а не умеет только транслировать ее из записи на одном языке программирования в другой.

--
Так вот, возвращаясь к тому, что написали вы. Ваш комментарий никакого отношения к понятиям "функция" не имеет. Он имеет отношение к понятию "трансляции языковых единиц rust под условным названием "function" и "macro" в низкоуровневое представление". В лиспе, между прочим, различия между макросами и функциями не вводятся, не так ли?

Рекомендую почитать курс MIT sicp (pdf на русском - https://newstar.rinet.ru/~goga/sicp/sicp.pdf). Осилив книгу вы сможете вполне спокойно писать на более чем 300 (трехстах) из существующих языков программирования (приблизительный список с примерами можно глянуть здесь: http://rosettacode.org/wiki/Hello_world/Text).

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

281. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от боня (?), 27-Мрт-21, 21:15 
> Чем write отличается от writeln!

write это функция, а writeln! это макрос.

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

58. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (58), 26-Мрт-21, 15:01 
>  А не подскажете зачем макросы выделять отдельно от функций значком "!"? Какая в этом практическая польза, помнить что макрос а что нет?

Потому что макросы принимают аргументами кастомный синтаксис, и творят с ним магию кодгена.
Полезнее сразу видеть, где в коде творится магия (макросы очень мощная штука)

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

68. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:20 
> Потому что макросы принимают аргументами кастомный синтаксис, и творят с ним магию
> кодгена.
> Полезнее сразу видеть, где в коде творится магия (макросы очень мощная штука)

Полезнее названия методов/макросов писать так, чтобы сразу было понятно что они делают, а не где внутрях происходит "магия".

Рекомендую почитать "Совершенный код" Макконела. Очень рекомендую.
https://ru.pdfdrive.com/%D0%A1%D0%BE...

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

95. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Аноним (95), 26-Мрт-21, 16:04 
Не знаток Rust, но учитывая его работу с памятью, предположу, что макросы и функции просто обязаны прямо отличаться.
Функция определяет новую область видимости, нужно специально следить за владением передаваемых и возвращаемых параметров. Макрос просто подставляет код макроса в текущую область видимости не влияя на владение. Плюс возможности макросов шире чем у функций.
Из приведенного примера с writeln вопрос почему это макрос, видимо в том, что в коде он автоматом преобразуется в два вызова write или один с добавлением к аргументу \n, а не обертки функции перекладывающие значения по стеку туда и обратно.
Ответить | Правка | Наверх | Cообщить модератору

145. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 18:35 
> Функция определяет новую область видимости, нужно специально следить за владением передаваемых
> и возвращаемых параметров. Макрос просто подставляет код макроса в текущую область
> видимости не влияя на владение.
> Из приведенного примера с writeln вопрос почему это макрос, видимо в том,
> что в коде он автоматом преобразуется в два вызова write...

Другими словами "макрос не влияя на владение параметров преобразуется в два вызова влияющих на владение параметров функций". Таким образом прямо противореча задекларированному.

Как видите, вы ошиблись. Это не так.

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

193. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (95), 26-Мрт-21, 21:18 
Макрос не влияет, но код к которому он в итоге приводит вполне может.
Не вижу тут противоречия. Сама логика его использования это подразумевает.
Главное что он не маскируется в какую-то самостоятельную функцию, которой на самом деле там и нет вовсе.
Для системного программирования думаю это очень хорошая практика. Тем более в доке видел макросы вида sql!(select * from TABLE1), тут уж явно не функция.
В остальном вопрос сводится к выбору подходящего имени самого макроса.
Так можно назвать макрос readln, а вызывать в нем write. Это запутывает, но к самой системе макросов это отношения не имеет.
Ответить | Правка | Наверх | Cообщить модератору

203. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Урри (ok), 26-Мрт-21, 22:18 
(facepalm)
Ответить | Правка | Наверх | Cообщить модератору

222. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (95), 26-Мрт-21, 23:43 
>(facepalm)

Ну это зря)

Если копнуть вопрос поглубже.
Единый синтаксис вызова функций и макросов, хотите поговорить об этом?
Является ли это подавленным ощущением ущербности системы функций в языке? Или может это желание насолить компилятору, который своей излишней опекой не хочет инлайнить нашу функцию? А может результат реакции на травму после случайно подсмотренных где-то аннотаций, декораторов и всяких аспектов?
Стоит также рассмотреть и как симптом неприятия естественных функций (builtin) и подсознательное желание переопределить их. Я уже не говорю, о таких щекотливых темах как скрытая любовь к уточкам и вообще к утиной типизации при передаче аргументов.

Как видите не самая радужная клиническая картина...)

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

152. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (152), 26-Мрт-21, 18:47 

> Полезнее названия методов/макросов писать так, чтобы сразу было понятно что они делают,
> а не где внутрях происходит "магия".

Не вижу ничего взаимоисключающего в этих двух вещах.


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

201. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:16 
> Полезнее названия методов/макросов писать так, чтобы сразу было понятно что они делают, а не где внутрях происходит "магия".

Дык их и пишут так. Что-то в слове println! тебе не ясно? Но println! при этом, в compile-time'е разбирает форматную строку, чтобы сгенерить нужную последовательность вызовов для вывода, плюс принимает переменное количество аргументов, что функциям недоступно. Сие есть магия, об этом следует помнить. Скажем, функция может заинлайниться или незаинлайнится, и как правило можно полагаться на то, что компилятор сделает как лучше. println! же нагенерит кода, который будет "заинлайнен" в любом случае, будет ли он занимать пять байт, килобайт или мегабайт.

Макрос всегда ведёт себя странно, не так как функция, потому что если бы можно было сделать его функцией, его бы сделали функцией. И да, как-то так выходит, что специальная подсветка для макросов очень показательна, всякие такие штуки как assert!, panic!, println!, и тп полезно видеть в коде сразу.

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

204. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Урри (ok), 26-Мрт-21, 22:19 
Я думал джаваскриптеку совсем прибитые своим языком. Но вы мне открываете новые горизонты.
Ответить | Правка | Наверх | Cообщить модератору

209. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:42 
> Я думал джаваскриптеку совсем прибитые своим языком. Но вы мне открываете новые
> горизонты.

Завсегда пожалуйста.

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

323. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (268), 30-Мрт-21, 16:04 
> sicp
> Code complete

Когда стало нормальным тыкать людей в то, что сам не удосужился хотя бы открыть?

Судя по комментариям, Урри-таки хаскелист, увидевший картиночку с xkcd и пописавший пару строчек на lisp. А судя по выводам, то не факт, что даже до хотя бы HelloWorld дошло.

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

74. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от НяшМяш (ok), 26-Мрт-21, 15:28 
> Не прошло и, сколько, 14 лет для полноценной имплементации такой базовейшей вещи?

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

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

77. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:32 
Подажжи, ведь раст замена с++. А значит раст оперирует с указателями. А указатели всегда могут быть не выравнены.

Получается, раст не замена плюсам. Раст замена, ну я не знаю, джаваскрипту?

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

82. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от НяшМяш (ok), 26-Мрт-21, 15:39 
А кто сказал что этого нельзя было делать раньше? Открываем ту же ссылочку по add_of! и читаем.

> Create a const raw pointer to a place, without creating an intermediate reference.

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

А раст как раз и создавали для того, чтобы не оперировать указателями. Указатели обычно нужны для граничных случаев типа лазания через ffi.

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

146. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Урри (ok), 26-Мрт-21, 18:38 
Фигня какая-то получается.

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

Извини, но реально звучит как бред какой-то. Точнее как полуосмысленное бегание "а что бы такого еще запилить".

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

39. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от th3m3 (ok), 26-Мрт-21, 14:29 
Есть уже что-то типо Django на Rust?
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Аноним (42), 26-Мрт-21, 14:44 
Лол язык не для этого он чтобы хвасаться, а не работать.
Ответить | Правка | Наверх | Cообщить модератору

75. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от НяшМяш (ok), 26-Мрт-21, 15:31 
Ждём примеров на C и С++
Ответить | Правка | Наверх | Cообщить модератору

104. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (-), 26-Мрт-21, 16:35 
Прикола ради - ты хоть пытался искать ? Этого г-на на самом деле хоть отбавляй.
Ответить | Правка | Наверх | Cообщить модератору

114. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (114), 26-Мрт-21, 17:04 
Искать для растофанатика, ты что матюгнулся так? Настоящие растофанатики не в состоянии заняться поиском в силу умственных способностей.
Ответить | Правка | Наверх | Cообщить модератору

79. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (79), 26-Мрт-21, 15:34 
actix-web
rocket
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

94. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (94), 26-Мрт-21, 15:57 
Нет. Есть actix, hyper, ntex но они по уровню абстракции как golang примерно.
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

40. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (40), 26-Мрт-21, 14:29 
Есть какой-нибудь софт на расте?
Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (42), 26-Мрт-21, 14:44 
Нету, совсем, от слова ващщщще.
Ответить | Правка | Наверх | Cообщить модератору

50. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от боня (?), 26-Мрт-21, 14:51 
Смотрите на

https://github.com/rust-unofficial/awesome-rust

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

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

61. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (40), 26-Мрт-21, 15:08 
Глянул - калькуляторы, враперы к Си либам, vim-клоны и прочее дерьмо.
Ответить | Правка | Наверх | Cообщить модератору

65. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (65), 26-Мрт-21, 15:15 
Болезный сам перейди по своей ссылке и посмотри что это за софтины. Это нелепая показуха для хомячков. В MeeGo раньше таже каждую читалку рсс ленты одного сайта называли приложением и говорили: «Смотрите сколько у нас  много приложений! Для каждого сайта своё!»
Ответить | Правка | К родителю #50 | Наверх | Cообщить модератору

250. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 27-Мрт-21, 07:42 
Вот еще

https://rust.libhunt.com/categories/1496-applications-writte...

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

302. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (268), 28-Мрт-21, 11:46 
> actix-web
> Firecracker
> нелепая показуха для хомячков

Ну-да, ну-да, посмотреть ты-таки не удосужился.

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

71. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:22 
> Смотрите на
> https://github.com/rust-unofficial/awesome-rust

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

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

324. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (268), 30-Мрт-21, 16:07 
> actix
> FireCracker
> ...

Если для Вас это

> хелловорлд

то что же Вы разрабатываете? Вселенную?
https://xkcd.com/224/

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

120. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (-), 26-Мрт-21, 17:21 
> https://github.com/rust-unofficial/awesome-rust

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

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

147. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Урри (ok), 26-Мрт-21, 18:39 
А забавно какой-то растафанатик пробежался по всем этим абсолютно правдивым комментариям. Подгорает, видимо, не слабо.
Ответить | Правка | Наверх | Cообщить модератору

251. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от боня (?), 27-Мрт-21, 07:58 
> А забавно какой-то растафанатик пробежался по всем этим абсолютно правдивым комментариям.

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

> Подгорает, видимо, не слабо.

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

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

266. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от нитрол (ok), 27-Мрт-21, 14:48 
Не являюсь растафанатиком или еще каким-либо фанатиком. Имхо, фанатизм - это трата энергии с низким КПД. Но это имхо, ибо суть ПД зависит от ситуации, т.е. зависит от поставленной цели. Я больше за поиск истины (особенно на фоне сегодняшнего мира с фейками/враньем/псевдо-сми/etc) - с этой целью хочется поделиться личным опытом. Бегло вспомнил парочку программ на Rust, что в моей личной практике используется: ripgrep (localhost) и linkerd (24/7 production). Не могу сказать, что это бесполезный софт или софт ради демонстрации возможностей языка. Мне то и язык, на котором написан этот софт, особо не важен - главное, что свою функцию выполняет.
Ответить | Правка | К родителю #147 | Наверх | Cообщить модератору

59. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (56), 26-Мрт-21, 15:04 
Очень много консольных утилит: ripgrep, bat, fd и т.д.

Большого софта с нуля на расте пока нет, но большой софт вообще редко появляется с нуля в наше время - чаще Rust встраивают в существующую кодовую базу. Компоненты на Rust есть в Firefox, Brave, Discord (как на клиенте, так и на сервере), VSCode и множестве другого софта. Значительная часть гугловой операционной системы Fuchsia написана на расте.

Плюс многие новые сервисы конторами, вроде Amazon, Cloudflare, Google и т.д., пишутся на расте.

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

63. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (65), 26-Мрт-21, 15:13 
>> Значительная часть гугловой операционной системы Fuchsia написана на расте.

Вот откуда вы берете весь этот бред. Еще и «значительная» часть. Кто-то завендорил несколько библиотек и их зависимости не больше.

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

67. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (56), 26-Мрт-21, 15:17 
https://www.reddit.com/r/rust/comments/k9r3s4/fuchsia_lines_.../

Нормально так вендорят. И какая, к слову разница, завендореный это код или написанный гуглом? Это то же самое, как если бы эту часть ОС просто написал подрядчик, а не гугл. А сишный и плюсовый код гугл, по-твоему, не вендорит? Нелепый аргумент.

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

80. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 15:34 
Там автор сразу исправился, выкинув совершенно лишние сердпати депенденси. Картина сразу стала не такой радужной.
Ответить | Правка | Наверх | Cообщить модератору

86. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (84), 26-Мрт-21, 15:46 
Можно тогда и само микроядро на плюсах выкинуть и расчетов - его тоже не гугл написал :)
Ответить | Правка | Наверх | Cообщить модератору

131. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от _ (??), 26-Мрт-21, 17:50 
Ну как же нет большого софта)

Возьмём криптовалюты - Polkadot, Kusama, прочие - все написаны на Rust, на фреймворке https://github.com/paritytech/substrate/

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

149. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Урри (ok), 26-Мрт-21, 18:43 
Я открыл глянуть в код.
--cut--
pub struct LightStorage<Block: BlockT> {
  db: Arc<dyn Database<DbHash>>,
  meta: RwLock<Meta<NumberFor<Block>, Block::Hash>>,
  cache: Arc<DbCacheSync<Block>>,
  header_metadata_cache: Arc<HeaderMetadataCache<Block>>,

  #[cfg(not(target_os = "unknown"))]
  io_stats: FrozenForDuration<kvdb::IoStats>,
}
...
fn number(&self, hash: Block::Hash) -> ClientResult<Option<NumberFor<Block>>> {
  if let Some(lookup_key) = block_id_to_lookup_key::<Block>(&*self.db, columns::KEY_LOOKUP, BlockId::Hash(hash))? {
    let number = utils::lookup_key_to_number(&lookup_key)?;
      Ok(Some(number))
  } else {
    Ok(None)
  }
}

--cut--

И эти люди хейтят с++. Хых.

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

177. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 26-Мрт-21, 20:20 
Немудрено, что растаманы путают > и <=
Ответить | Правка | Наверх | Cообщить модератору

180. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (-), 26-Мрт-21, 20:26 
> Я открыл глянуть в код.

Вот теперь я не боюсь попробовать лисп.

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

185. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 20:39 
Лисп - божественный язык.
Ответить | Правка | Наверх | Cообщить модератору

276. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от burjui (ok), 27-Мрт-21, 20:05 
Берём пример плохо написанного кода и делаем выводы о языке. Уровень: опеннетовский эксперт.
Ответить | Правка | К родителю #149 | Наверх | Cообщить модератору

170. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (170), 26-Мрт-21, 19:40 
Я помню, как мне нахваливали этот рип, типа, вау! На деле же, кривая поделка с неудобным синтаксисом, крашится через раз, на нжмд пытается читать в несколько потоков и что логично в результате этого результат выдаёт в сотни раз медленнее однопоточного гну греп. Хотя сам по себе то греп не слишком сложный при этом, но и тут не осилили. Пусть лучше остаётся для вебни -- там вполне стоит заменить го и жс, а нормальное программирование уж оставят для нормальных программистов на нормальных языках.
Ответить | Правка | К родителю #59 | Наверх | Cообщить модератору

182. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 26-Мрт-21, 20:28 
Что вам плохого веб программисты сделали ? Не надо этого в веб.
Ответить | Правка | Наверх | Cообщить модератору

186. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Урри (ok), 26-Мрт-21, 20:39 
Все лучше чем джаваскрипт. Даже раст.
Ответить | Правка | Наверх | Cообщить модератору

205. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Урри (ok), 26-Мрт-21, 22:21 
Я почитал новые комменты и теперь уже в этом не уверен.
Ответить | Правка | Наверх | Cообщить модератору

277. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от burjui (ok), 27-Мрт-21, 20:08 
Если читать все комментарии на этом ресурсе, можно потерять веру в разумность человечества. К счастью, это будет не репрезентативная выборка.
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (42), 26-Мрт-21, 14:42 
Разработчики чтобы показать хоть какие-то улучшения в языке следующиую версию выпустят 152.
Ответить | Правка | Наверх | Cообщить модератору

278. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от burjui (ok), 27-Мрт-21, 20:15 
Ну да, ведь намного лучше несколько лет толочь воду в ступе, а потом выкатить огромный релиз, срывающий шаблоны, с крутой кривой обучения, и таким образом разделить сообщество на консерваторов, которые сидят на говне мамонта, и хипстеров, которые тут же бросят старый код и понесутся писать новый, с пасьянсом и надувными женщинами. Куда там этим идиотам, ничего не знают о разработке ЯП, надо было на Опеннете спрашивать, как правильно делать.
Ответить | Правка | Наверх | Cообщить модератору

85. "Выпуск языка программирования Rust 1.51"  +4 +/
Сообщение от Аноним (88), 26-Мрт-21, 15:44 
> получила статус минимально жизнеспособного

Собственно всё что вы хотели знать о Rust но боялись спросить.

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

279. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от burjui (ok), 27-Мрт-21, 20:16 
Шутки за 200.
Ответить | Правка | Наверх | Cообщить модератору

96. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (96), 26-Мрт-21, 16:14 
А с мысл? Чтобы оказаться там-же где и все прочие убийцы C/C++? На свалке времён?

Приблезительно через равный промежуток времени появляется очередная порция подростков неосиляторов. Для которых всё сложно и непонятно и оуни начинают велосипедить свои истинно верные убийцы С/С++. И каждый раз оказываются в одном и том-же месте. В нигде, на свалке времён.

Очердной убийца? Т.е. тот который самоубьётся апстену?

Хоть синтаксис бы оставили привычный большенствую языков. И терминалогию. А то отсебятина сексуального меншинства прямо.

Конечно, прыщавому васяну из компании два васяна продакшен виднее.

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

102. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (-), 26-Мрт-21, 16:33 
> Приблезительно через равный промежуток времени появляется очередная порция подростков
> неосиляторов. Для которых всё сложно и непонятно и оуни начинают велосипедить свои истинно верные убийцы С/С++.

Graydon Hoare и Brendan Eich - подростки-неосиляторы? Вот оно че!


> Конечно, прыщавому васяну из компании два васяна продакшен виднее.

Какой ты самокритичный.

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

106. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от боня (?), 26-Мрт-21, 16:36 
> А с мысл? Чтобы оказаться там-же где и все прочие убийцы C/C++?
> На свалке времён?

Никто ваш c++ не заберёт, не волнуйтесь так.

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

112. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (316), 26-Мрт-21, 16:56 
> C/C++

Один язык хорошо, а два лучше!

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

115. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (114), 26-Мрт-21, 17:05 
И много говнософта уже написал на языке zig?
Ответить | Правка | Наверх | Cообщить модератору

116. "Выпуск языка программирования Rust 1.51"  –2 +/
Сообщение от Аноним (316), 26-Мрт-21, 17:08 
У тебя там память не течёт, сисишник?
Ответить | Правка | Наверх | Cообщить модератору

118. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (-), 26-Мрт-21, 17:14 
А у тебя уже занчилась ?
Ответить | Правка | Наверх | Cообщить модератору

179. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от Аноним (307), 26-Мрт-21, 20:23 
в ресдохе течёт память, но растаманы объяснили, что это норма.
Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

188. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (40), 26-Мрт-21, 20:44 
> в ресдохе течёт память

Потому что половина кода на СИ

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

151. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Урри (ok), 26-Мрт-21, 18:47 
> Приблезительно через равный промежуток времени появляется очередная порция подростков
> неосиляторов. Для которых всё сложно и непонятно и оуни начинают велосипедить

Уже довелосипедились. Я выше пример привел из широкоизвестной в узких кругах растолибы substrate:
--cut--
pub struct LightStorage<Block: BlockT> {
  db: Arc<dyn Database<DbHash>>,
  meta: RwLock<Meta<NumberFor<Block>, Block::Hash>>,
  cache: Arc<DbCacheSync<Block>>,
  header_metadata_cache: Arc<HeaderMetadataCache<Block>>,
  #[cfg(not(target_os = "unknown"))]
  io_stats: FrozenForDuration<kvdb::IoStats>,
}
...
fn number(&self, hash: Block::Hash) -> ClientResult<Option<NumberFor<Block>>> {
  if let Some(lookup_key) = block_id_to_lookup_key::<Block>(&*self.db, columns::KEY_LOOKUP, BlockId::Hash(hash))? {
    let number = utils::lookup_key_to_number(&lookup_key)?;
      Ok(Some(number))
  } else {
    Ok(None)
  }
}

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

210. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 26-Мрт-21, 22:47 
И что тут не так?
Ответить | Правка | Наверх | Cообщить модератору

227. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 26-Мрт-21, 23:52 
Код слегонца наркоманский и контринтуитивный, а так все хорошо, прекрасная маркиза. Признайся, что ты жрешь чтобы затюнить мозг для работы с такими закорюками? А то даже у лютых игроделов такого нет, они догадываются что это потом еще и майнтайнить надо, при том не факт что тому же человеку...
Ответить | Правка | Наверх | Cообщить модератору

230. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Ordu (ok), 27-Мрт-21, 00:54 
> Код слегонца наркоманский и контринтуитивный, а так все хорошо, прекрасная маркиза. Признайся,
> что ты жрешь чтобы затюнить мозг для работы с такими закорюками?

Тут всё довольно просто. Если с подсветкой синтаксиса, будет вообще тривиально. У тебя просто глаз непривычен к синтаксису, и поэтому парсинг всего этого требует большого количества усилий. Тренированный глаз выхватывает знакомые блоки, и либо пляшет от них, либо отвергает их как неважные в данный момент. Ну, там, Arc скажем -- это thread-safe reference count. Если мне в данный момент это не важно, то я тут же выделяю оттуда dyn Database<DbHash>, а это значит, что речь про ref counted указатель на объект, реализующий трейт Database, с параметром DbHash, который явно задаёт алгоритм хеширования база данных пользуется. Последнее суждение правда вынесено чисто на основании названия типа, которое я впервые вижу, но... ну и чо? Можно задаться вопросом, зачем тут индирекция через трейт в сочетании с типом-параметром DbHash, но это, возможно, чтобы позволить компилятору выбирать функцию алгоритма хеширования на этапе компиляции, без десятка вложенных virtual вызовов. Впрочем, это уже совсем спекуляции, поскольку я не знаю зачем этот код.

Или в функции -- там же сразу видно, что функция возвращает результат выполнения выражения if let, которое либо находит key и выполняет то что перед else'ом и возвращает результат, либо не находит и возвращает результат выполнения того, что после else'а.

> А то даже у лютых игроделов такого нет, они догадываются что
> это потом еще и майнтайнить надо, при том не факт что
> тому же человеку...

rust отличается как раз тем, что его мейнтейнить довольно просто. Это люди часто отмечают: сложные рефакторинги с растом занимают на удивление мало времени, потому что все твои косяки вылезут на компиляции, тебе не придётся потом как с C/C++ долго отлаживать программу, или ещё как-то вылавливать, что же там в процессе рефакторинга было упущено.

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

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

233. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Урри (ok), 27-Мрт-21, 01:40 
Вообще-то тут все плохо. Даже более скажу - очень, очень плохо; я за подобный c++ код увольнял людей.

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

Код выше хорошо бы смотрелся как результат кодогенерации некоего языка более верхнего уровня. Но как первичный язык - это полный отстой.

Вы пока этого не понимаете, судя по вашим комментариям. Так что я вам предложу простую аналогию.
Представьте, что вы сейас читаете макроассемблерный код, где в дополнение к простым инструкциям MOV, ADD, SUB добавлены более сложные VMOVDQU64, VPBROADCASTQ, PINSRQ. "В чем сложности, бро" спросите вы? В том, что с этим кодом может работать (причем обязательно без перерывов) специалист узкого профиля. Прервался - забыл, сиди вспоминай и строй в голове все по новой. Причем познания этого специалиста вообще никак не могут пригодится вне этой области - например, при переходе на arm ассемблер или даже на языки более высокого уровня.

Код выше обладает всеми недостатками примера с ассемблером. Это и многократные вложения, заставляющие каждый раз строить в голове цепочку структур "кто на чем стоял", и акронимы (слава богу попроще чем PINSRQ), и перегруженность спецсимволами, которые в любом языке очень плохая идея, и практическая невозможность сопровождения, когда надо быстро вносить минимальные правки не ломая все и вся.

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

У Макконела есть великолепная книга, "Совершенный код". Если ее ненавязчиво понемногу читать, со временем вырабатывается интуитивное чувство правильного кода - кода, который легко читать, легко сопровождать, который можно легко сбросить на коллегу, если ты временно недоступен, легко разбросать на целую команду, не теряя кучу времени на постоянные выяснения "а что же эта конструкция значит" и легко фиксить небольшие баги, когда достаточно поменять пару строк в одном или двух местах.

Вот как то так.

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

236. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Ordu (ok), 27-Мрт-21, 02:25 
> Вообще-то тут все плохо. Даже более скажу - очень, очень плохо; я за подобный c++ код увольнял людей.

В C++ этот код не скомпилируется. Это не C++, детка, это раст. Не надо критериями C++ мерять раст. Ты ещё критериями лиспа померяй C++, что получится?

> Представьте, что вы сейас читаете макроассемблерный код, где в дополнение к простым инструкциям MOV, ADD, SUB добавлены более сложные VMOVDQU64, VPBROADCASTQ, PINSRQ. "В чем сложности, бро" спросите вы? В том, что с этим кодом может работать (причем обязательно без перерывов) специалист узкого профиля. Прервался - забыл, сиди вспоминай и строй в голове все по новой. Причем познания этого специалиста вообще никак не могут пригодится вне этой области - например, при переходе на arm ассемблер или даже на языки более высокого уровня.

Я только что прочитал этот код, не зная откуда он, не видя документации к трейту Database, не видя документации к DbHash, не видя документации ко всем остальным типам. Самой большой проблемой было, что я привык читать с подсветкой синтаксиса, поэтому здесь приходилось вглядываться, где там :, отделяющее имя поля от сигнатуры типа, и все эти #[] не подсвечиваются, и поэтому замусоривают поле зрения.

Если тебе нужен пример кода, в котором сам чёрт ногу сломит, то я порекомендую глянуть на генераторы парсеров или, скажем, библиотеки для immediate mode GUI: conrod и особенно egui. Особенно egui отличается пустой и не объясняющей ничего документацией, из которой непонятно как это использовать, разглядывание сорцов тоже ничего не проясняет, обрывки кода в документации непонятно как склеивать и увязывать с остальной логикой... ууу... вот это срань, реально. conrod ещё куда ни шло, к нему хоть примеров можно найти, и разглядывая их вперемешку с документацией и кодом можно сообразить, что к чему. А то что ты цитируешь -- это детский лепет, который у тебя вызывает проблемы по тем же причинам, по которым у меня вызывает проблемы C++: перенос навыков с одного языка на другой не срабатывает и ещё усугубляется схожестью языков.

> Код выше обладает всеми недостатками примера с ассемблером. Это и многократные вложения, заставляющие каждый раз строить в голове цепочку структур "кто на чем стоял", и акронимы (слава богу попроще чем PINSRQ), и перегруженность спецсимволами, которые в любом языке очень плохая идея, и практическая невозможность сопровождения, когда надо быстро вносить минимальные правки не ломая все и вся.

Всё завёртывание там -- это умные указатели. Про Arc я рассказал, а значение RwLock и FrozenForDuration понятно из названия. Единственное, что неясно из кода без чтения документации, это что за Meta такой. И про разумность использования его параметризованным я ничего не могу сказать. Остальное, блин, очевидно при первом прочтении.

> Но вы превращаетесь в кодера - придаток одного конкретного языка (я, например, хорошо владею брейнфаком - помогли ли мне эти знания где-то вовне брейнфака? нет). Придаток, который в ближайшем будущем можно легко заменить на алгоритм кодогенерации (как, например, из c генерируют адекватный джаваскрипт). Придаток, совершенно бесполезный вне границ языка.

Мне похрен. Rust -- это уникальная вещь, мне приходилось эпизодически раньше оказыватся в стане фанатов какого-либо языка, но каждый ненадолго, довольно быстро я начинал видеть в языке фатальные недостатки. Rust'ом я фанатею уже 6 лет, с момента выхода 1.0. И я не хочу знать про другие языки. Я шелл-скрипты сегодня пишу на расте. Однострочники так же набираю в шелле bash, но ежели однострочником не обойтись, я пишу на расте. Мне сегодня не интересны все эти lisp'ы, C, и прочие. Я могу разглядывать другие языки, типа go, но мне неинтересно на них писать.

> У Макконела есть великолепная книга, "Совершенный код".

Я закину её в список чтения. Может как-нибудь почитаю.

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

303. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (268), 28-Мрт-21, 12:15 
> Это и многократные вложения, заставляющие каждый раз строить в голове цепочку структур
> "кто на чем стоял", и акронимы (слава богу попроще чем PINSRQ), и перегруженность спецсимволами

Описал C++.

> Код выше обладает всеми недостатками примера с ассемблером.

Ага, понятно.

> я, например, хорошо владею брейнфаком

Судя по Вашим комментариям во всех тредах, где упоминается Rust, только этот язык Вы и осилили, остальные, видимо, слишком сильно от него отличаются, поэтому не получилось.

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

304. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (268), 28-Мрт-21, 12:18 
> я за подобный c++ код увольнял людей.

Получается, ты остался без плюсовиков?

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

220. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от Онаним (?), 26-Мрт-21, 23:23 
Мои глаза вытекли, спасибо.
Ответить | Правка | К родителю #151 | Наверх | Cообщить модератору

129. "Выпуск языка программирования Rust 1.51"  –1 +/
Сообщение от еманйам (?), 26-Мрт-21, 17:44 
как язык раст то может и ничего..
но я вот думаю: настанет момент, и всякие редхаты с мозиллами, укажут Линусу на дверь: уж слишком он харизматичен.
Ответить | Правка | Наверх | Cообщить модератору

181. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (307), 26-Мрт-21, 20:27 
> всякие редхаты с мозиллами, укажут Линусу на дверь

Типичное поведение боевых 3,14: подождать, пока кто-то что-то сделает, а потом захватить готовое. Ничего не напоминает? (Хинто: как украли 5G у Хуавея).

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

234. "Выпуск языка программирования Rust 1.51"  –3 +/
Сообщение от Аноним (-), 27-Мрт-21, 01:49 
Плохая дорога так то тоже в совет директоров хруста втерлась, так что им не на что жаловаться.
Ответить | Правка | Наверх | Cообщить модератору

239. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (307), 27-Мрт-21, 02:31 
Втёрлась, чтобы посмотреть на других и у себя так не делать.
Ответить | Правка | Наверх | Cообщить модератору

192. "Выпуск языка программирования Rust 1.51"  +2 +/
Сообщение от White Crow (?), 26-Мрт-21, 21:04 
Торвальдс, так яростно обожествляемый тобой, является действующим акционеров Red Hat, которому принадлежит довольно крупный пакет акций.

Т.е. по сути он даже не сотрудник, а совладелец компании.

Продолжай и дальше делать из него святого великомученика.

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

232. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от еманйам (?), 27-Мрт-21, 01:34 
> Торвальдс, так яростно обожествляемый тобой, является действующим акционеров Red Hat,
> которому принадлежит довольно крупный пакет акций.
> Т.е. по сути он даже не сотрудник, а совладелец компании.
> Продолжай и дальше делать из него святого великомученика.

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

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

262. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от White Crow (?), 27-Мрт-21, 12:30 
Linux теперь точно такой же мейнстримный корпоративный продукт, как Windows, например.

А от бородача избавляются как раз по причине его принципиальной позиции, касательно всех этих корпораций добра на подобие Red Hat, Canonical, Microsoft и прочих там Oracle.

Просто он им больше ненужен.

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

165. Скрыто модератором  –1 +/
Сообщение от Аноним (307), 26-Мрт-21, 19:30 
Ответить | Правка | Наверх | Cообщить модератору

172. Скрыто модератором  +1 +/
Сообщение от szt1980 (ok), 26-Мрт-21, 19:44 
Ответить | Правка | Наверх | Cообщить модератору

183. Скрыто модератором  +/
Сообщение от Аноним (307), 26-Мрт-21, 20:28 
Ответить | Правка | Наверх | Cообщить модератору

194. Скрыто модератором  –4 +/
Сообщение от Andrii (?), 26-Мрт-21, 21:18 
Ответить | Правка | Наверх | Cообщить модератору

219. Скрыто модератором  –1 +/
Сообщение от Онаним (?), 26-Мрт-21, 23:21 
Ответить | Правка | Наверх | Cообщить модератору

237. Скрыто модератором  –1 +/
Сообщение от Аноним (307), 27-Мрт-21, 02:27 
Ответить | Правка | К родителю #194 | Наверх | Cообщить модератору

238. Скрыто модератором  +/
Сообщение от Аноним (307), 27-Мрт-21, 02:29 
Ответить | Правка | К родителю #194 | Наверх | Cообщить модератору

226. "Выпуск языка программирования Rust 1.51"  +1 +/
Сообщение от Аноним (-), 26-Мрт-21, 23:50 
> покровительством независимой некоммерческой организации Rust Foundation

С советом директоров из амазона, майкрософта, и кого там еще. Вот такая вот хреновая независимость...

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

231. Скрыто модератором  +2 +/
Сообщение от Аноним (231), 27-Мрт-21, 01:28 
Ответить | Правка | Наверх | Cообщить модератору

248. Скрыто модератором  +1 +/
Сообщение от Аноним (307), 27-Мрт-21, 07:36 
Ответить | Правка | Наверх | Cообщить модератору

280. Скрыто модератором  +1 +/
Сообщение от burjui (ok), 27-Мрт-21, 20:19 
Ответить | Правка | К родителю #231 | Наверх | Cообщить модератору

282. Скрыто модератором  +1 +/
Сообщение от Аноним (307), 27-Мрт-21, 21:31 
Ответить | Правка | Наверх | Cообщить модератору

294. Скрыто модератором  +/
Сообщение от burjui (ok), 28-Мрт-21, 02:08 
Ответить | Правка | Наверх | Cообщить модератору

296. Скрыто модератором  –1 +/
Сообщение от Аноним (307), 28-Мрт-21, 07:14 
Ответить | Правка | Наверх | Cообщить модератору

301. Скрыто модератором  +/
Сообщение от burjui (ok), 28-Мрт-21, 10:36 
Ответить | Правка | Наверх | Cообщить модератору

243. "Выпуск языка программирования Rust 1.51"  +3 +/
Сообщение от Аноним (-), 27-Мрт-21, 04:51 
Почему Майкрософт примазалась к Расту. Чтобы потом сделать платными компоненты как в Дельфи?

Раст не взлетит пока не избавится от Майкроссофт, потому-что Майкрософт проклятая компания. Любое сообщество, которое связывается с Майкрософт обречёно на деградацию.

Растаманы, пишем петицию за вывод майкрософт из состава директоров!

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

245. Скрыто модератором  +2 +/
Сообщение от Аноним (307), 27-Мрт-21, 06:17 
Ответить | Правка | Наверх | Cообщить модератору

259. Скрыто модератором  +1 +/
Сообщение от Аноним (259), 27-Мрт-21, 09:57 
Ответить | Правка | Наверх | Cообщить модератору

258. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (259), 27-Мрт-21, 09:56 
Они просто наняли программистов уволенных из Мозиллы. А планы у них собственный хипстерский язык, у которого нет фатального недостатка.
Ответить | Правка | К родителю #243 | Наверх | Cообщить модератору

283. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (307), 27-Мрт-21, 21:32 
> у которого нет фатального недостатка.

"написан не ими" :)

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

309. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 28-Мрт-21, 20:56 
но для Дельфи тонны бесплатных компонент. Сейчас даже и сам Дельфи бесплатен (коммюнити едишн)
Ответить | Правка | К родителю #243 | Наверх | Cообщить модератору

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

313. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (-), 29-Мрт-21, 07:16 
коммюнити эдишн - урезанная и триальная версия?
Ответить | Правка | К родителю #309 | Наверх | Cообщить модератору

314. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 29-Мрт-21, 07:35 
по-русски - https://www.embarcadero.com/ru/products/delphi/product-editions
https://www.embarcadero.com/docs/Delphi-Feature-Matrix.pdf
https://www.embarcadero.com/docs/rad-studio-feature-matrix.pdf

Линукса в коммюнити не было.

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

315. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 29-Мрт-21, 07:38 
https://www.embarcadero.com/ru/products/delphi/starter -

Delphi Community Edition предоставляет возможность использования встроенных профессиональных инструментов разработки с самого первого дня.

Разработка приложений для Windows, macOS, Android и iOS осуществляется с использованием единой базы кода.

Визуальная разработка с использованием программных каркасов Delphi VCL и FireMonkey.

Built-in Debugging Tools and integrated toolchain that allow you to debug on any device

Rapidly build database apps with data binding and local/embedded capabilities

Сотни встроенных компонентов позволяют повысить уровень разрабатываемых приложений и сократить количество циклов разработки.

Direct access REST services and local/embedded databases such as InterBase, SQLite, MySQL, and more.

​Лицензия на использование продолжает действовать до тех пор, пока прибыль физического лица или компании от приложений Delphi не достигнет 5 000 долларов США, или штат команды разработчиков не превысит 5 человек.

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

320. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Имя (?), 30-Мрт-21, 10:28 
А русского термина нет, сладкие мои птенчики? Ну што за ДЖЕНЕРИКИ-то, а?
Ответить | Правка | Наверх | Cообщить модератору

321. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (305), 30-Мрт-21, 14:17 
"термин" - не русский термин.
Ответить | Правка | Наверх | Cообщить модератору

322. "Выпуск языка программирования Rust 1.51"  +/
Сообщение от Аноним (322), 30-Мрт-21, 16:02 
Слово "термин" уже более 300 лет с нами. Так что рот свой на замок закрой
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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