The OpenNET Project / Index page

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



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

Оглавление

Выпуск языка программирования Rust 1.58, opennews (?), 14-Янв-22, (0) [смотреть все]

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


202. "Выпуск языка программирования Rust 1.58"  +1 +/
Сообщение от Прохожий (??), 15-Янв-22, 02:16 
> Если уж на то пошло, то можно взять Оберон, допилить ему асинхронность и многопоток, доработать правила, связанные с областью видимости и УЖЕ получится язык лучше и проще для практического применения, чем Rust который только и делает, что вечно куда-то "собирается".

У тебя проблемы с логикой. Ты готов ждать (неизвестно сколько), пока допилят Оберон (ничего против него не имею, если что), но не готов ждать, пока совершенствуют Раст, хотя у последнего есть и асинхронность, и многопоток, и продвинутые работающие правила с областью видимости. Какой-то поток сознания, в общем.

Внимание вопрос: чего тебе не хватает на самом деле?

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

210. "Выпуск языка программирования Rust 1.58"  +/
Сообщение от wyry (?), 15-Янв-22, 07:24 
Вообще-то мне как раз ВСЕГО хватает и БЕЗ Rust :). Оберон вообще никогда не допилят, здесь скорее важна сама концепция. Все что может предложить Rust в том или ином виде существует в C++ уже давно. При желании, используя move-семантику и умные указатели можно даже писать в стиле Rust на плюсах. Rust идейно не привнёс в индустрию ВООБЩЕ НИЧЕГО НОВОГО. Предыдущая "революция", когда активно форсились функциональные языки и LISP, мне нравилась больше. Там хоть в обсуждении были не PR-технологи.
Ответить | Правка | Наверх | Cообщить модератору

224. "Выпуск языка программирования Rust 1.58"  +1 +/
Сообщение от Прохожий (??), 15-Янв-22, 13:26 
>Все что может предложить Rust в том или ином виде существует в C++ уже давно

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

>Rust идейно не привнёс в индустрию ВООБЩЕ НИЧЕГО НОВОГО

То же можно сказать о C++. Но ты же им пользуешься,тем не менее.

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

254. "Выпуск языка программирования Rust 1.58"  +/
Сообщение от wyry (?), 15-Янв-22, 20:22 
>>Все что может предложить Rust в том или ином виде существует в C++ уже давно

..
> выговориться надо было, тебя факты не интересуют.

Меня как раз интересуют только факты, более того я прагматик, с удовольствием приму Rust если он когда-нибудь будет реально удобен и производителей (в плане скорости разработки). Только вот это так не работает, то что вы перечислили в несколько ином виде реализовано в ML (oCaml, F#), но и они не очень то взлетели, хотя по дизайну они лучше и прозрачнее.

>>Rust идейно не привнёс в индустрию ВООБЩЕ НИЧЕГО НОВОГО
> То же можно сказать о C++. Но ты же им пользуешься,тем не
> менее.

Кстати C++ всё же кое-что внёс, а именно ссылочный тип (не указатель). (Это не тоже самое что ссылки на объекты в true OOP).
В остальном C++ с переменным успехом дёргает идеи других языков, НО чёрт возьми, C++ сам уже старый язык. Rust же не внося ничего принципиально нового обеспечивает иллюзию безопасности. Ну давайте ещё 10 лет подождём. Дискуссии то за предыдущие 10 лет не особо поменялись. Вот серьёзно, лучше бы LISP в очередной раз откопали, он по крайней мере идейный, макросы и метапрограммирование вообще лучшее.

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

275. "Выпуск языка программирования Rust 1.58"  +1 +/
Сообщение от Прохожий (??), 16-Янв-22, 04:19 
> с удовольствием приму Rust если он когда-нибудь будет реально удобен и производителей (в плане скорости разработки)

Единственная проблема у Rust со скоростью разработки - это жалобы на медленную компиляцию. Но это решаемо со временем.

> Только вот это так не работает

Что, это? Rust уже используют сугубо в прагматичных целях. Кто? Да спонсоры проекта же: Google, Microsoft, Amazon, Huawei, Mozilla и многие другие.

> в несколько ином виде реализовано в ML (oCaml, F#), но и они не очень то взлетели, хотя по дизайну они лучше и прозрачнее.

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

> Rust же не внося ничего принципиально нового обеспечивает иллюзию безопасности.

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

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

277. "Выпуск языка программирования Rust 1.58"  +/
Сообщение от Прохожий (??), 16-Янв-22, 04:22 
> обеспечивает иллюзию безопасности

Почему иллюзию? Если писать код с нуля на Rust, не используя сторонние библиотеки на других языках, то эта безопасность (работы с памятью) вполне себе реальная. Кроме того, в Rust практически нет UB, чего не скажешь о плюсах или C.

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

282. "Выпуск языка программирования Rust 1.58"  –2 +/
Сообщение от wyry (?), 16-Янв-22, 07:07 
В Pascal вообще нет UB (демагог в другой ветке выдавил из себя только integer overflow, который допускается стандартом). При этом он проще, а косяки выходят из его "академичности" и нацеленности на обучение (в исходном варианте вообще все переменные глобальные). А иллюзию хотя бы потому, что Rust создаёт впечатление контроля над памятью, а в реальности на нём не так уж и сложно допустить утечку. И из-за хитрой семантики владения отлавливать их сложнее. Rust гарантирует разве что безопасность в отношении работы с данными, но эти проблемы уже давно решены в C. Более того само понимание работы с данными работает на повышение квалификации разработчика.

И кстати Rust на далёкую перспективу не станет системным языком, по двум причинам. Во-первых на нём неудобно работать с памятью, а если везде использовать unsafe, то написание кода превратится в переусложнённую на ровном месте аналогию с C. Вторая причина более фундаментальная: rust разрушает восприятие железа и в систмном программировании это решающая роль. ANSI C же в свою очередь вопроизводит копию фоннеймановской архитектуры и разработка на нём очень органична.

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

По поводу ML и почему они не взлетели. Пиара действительно мало, но это второстепенное. Разработчикам прагматикам часто хочется чтобы их язык мог без труда делать что угодно. Поэтому C# и Java несмотря на их банальность всегда уже будут на плаву. Автор языка V кстати поступил очень грамотно в своём творении обеспечив максимально бесшовное взаимодействие с C. Страуструп, которого к слову есть за что покритиковать также уловил суть и также добивался полной совместимости с C без лишних телодвижений. Говоря о функиональщине получается конфликт парадигм и даже если его можно разрешить, это всё слишком усложняет. Rust кстати рискует повторить те же ошибки, он УЖЕ их допускает, учитывая что на него тратят тонны средств, его продвигают, а реальных проектов как не было так и нет. Whatsapp на erlang написан, популярный язык? Да не очень то. Упомянутый аутичный V во всю используется его автором, и довольно успешно (см. проект Volt). у Rust же проблем нет только в его рекламе, а если это не так, то будем ждать реальных проектов. Но скорее дождёмся уже третьего прешествия LISP.

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

294. "Выпуск языка программирования Rust 1.58"  +/
Сообщение от freecoderemail (ok), 16-Янв-22, 16:50 
Вот что пишется на Rust прямо сейчас: https://github.com/topics/rust?l=rust&o=desc&s=stars
Ответить | Правка | Наверх | Cообщить модератору

298. "Выпуск языка программирования Rust 1.58"  +1 +/
Сообщение от Прохожий (??), 16-Янв-22, 19:16 
> В Pascal вообще нет UB

А вот это всё есть (цитата Анонима)?

"гугление показывает что в нем возможны use after free, double free, nullable pointers, memory aliasing, потеря константности за ссылкой. Дальше не смотрел."

А в Rust этого всего нет. Ну и кто тут в дамках?

> в реальности на нём не так уж и сложно допустить утечку

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

> Во-первых на нём неудобно работать с памятью

Умные указатели Box, Rc, Refcell не осилил? Что там сложного и неудобного?

> rust разрушает восприятие железа. ANSI C же в свою очередь вопроизводит копию фоннеймановской архитектуры

Что за бред?

> computer science альтернатива - это LISP-машина

На LISP-машине будешь драйверы писать?

> Поэтому C# и Java несмотря на их банальность всегда уже будут на плаву.

Java увядает (см. индекс Tiobe). Что значит "банальность", кстати, в применении к ЯП?

> Автор языка V кстати поступил очень грамотно в своём творении обеспечив максимально бесшовное взаимодействие с C

У Rust с этим нет проблем от слова "совсем".

> у Rust же проблем нет только в его рекламе

Не услышал пока ни одной внятно сформулированной проблемы у Rust. Сплошной поток сознания.

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

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

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




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

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