The OpenNET Project / Index page

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



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

Оглавление

В GCC утверждено включение поддержки языка Rust, opennews (??), 11-Июл-22, (0) [смотреть все]

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


65. "В GCC утверждено включение поддержки языка Rust"  +/
Сообщение от topin89 (ok), 12-Июл-22, 01:07 
А можно поподробнее? Любопытен практический опыт.
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

73. "В GCC утверждено включение поддержки языка Rust"  +5 +/
Сообщение от Аноним (75), 12-Июл-22, 01:45 
Я не буду вдаваться в подробности, скажу только что язык экспериментальный. На нём категорически нельзя писать профессиональный софт на данный момент. На этом сравнение с Rust можно и закончить;)

Для простых утилит command-line он и сейчас уже, скорее всего, сгодится. Но не более.

Вот ошибка лично моя - https://github.com/ziglang/zig/issues/10873. А сколько таких сейчас там? Тысячи.

Ещё есть ощущение что часть слизана с Rust. Как минимум они сталкиваются с такими же проблемами. Например pin/unpin структур -  https://github.com/ziglang/zig/issues/7769. Ещё не сделано. Точно такая же проблема, с которой столкнулся Rust и был изобретён Pin/Unpin.

Концептуально язык очень интересный. Он не альтернатива Rust - альтернатива С.

И вот как замена С он очень интересный и гораздо лучше Сишки. Хотя я периодически ловил corrupted data - попорченные данные на стеке.

От этих ошибок язык не спасал (а я думаю мог бы). При том код был максимально аккуратно написан - просто сама семантика (структур в структурах и их layout) не всегда понятна. Я думал что структура должна была копироваться. Очень легко получить corrupted data.

Язык очень простой - учится базово буквально за несколько дней. Чтобы хоть что-то закоммитить в нормальный проект на Rust надо месяц его читать, включая RFC, async book, trait bounds, и т.д. и т.п.

Вот моя имплементация очереди и ring buffer для примера как выглядит код -

https://gist.github.com/likern/ac01b315434c68622f70cc0228863971

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

238. "В GCC утверждено включение поддержки языка Rust"  +/
Сообщение от Анончик (?), 12-Июл-22, 18:06 
>>Вот ошибка лично моя - https://github.com/ziglang/zig/issues/10873. А сколько таких сейчас там? Тысячи.

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

>> И вот как замена С он очень интересный и гораздо лучше Сишки. Хотя я периодически ловил corrupted data - попорченные данные на стеке.

Если посмотреть выступления Andrew Kelley он везде и говорит про Zig как замену СИ в определенных местах.

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

296. "В GCC утверждено включение поддержки языка Rust"  +/
Сообщение от topin89 (ok), 13-Июл-22, 02:03 
Такие комментарии -- это причина, почему я до сих пор на опеннете. Спасибо за подробный ответ!
Ответить | Правка | К родителю #73 | Наверх | Cообщить модератору

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

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




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

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