LINUX.ORG.RU
ФорумTalks

Опрос Rust-разработчиков

 


1

4

https://www.heise.de/en/news/Rust-developers-criticize-complexity-and-lack-of-support-11205023.html

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

Линукс тут при том, что большая часть разрабов на расте программирует на/для систем на базе Линукс.

★★★★★

Последнее исправление: hobbit (всего исправлений: 1)

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

К большому сожалению я сам пишу на Java/Kotlin и недавно очень сильно сгорел.

Слоган этого тормозного поделия «Write Once. Run Everywhere».

Окей, запомнили, кросс платформа ценой абстракции в виде JVM, вроде логично.

Потом идём на сайт Б-гомерзкой Android Studio, которая написана на Java, из-за этого мне нужно 64 ГБ ОЗУ чтобы с этой ересью работать, и видим прекрасную надпись «Linux machines with ARM-based CPUs aren’t currently supported.»

Кроме как цитатой Лаврова про дебилов я сложившееся описать не могу.

Остальные языки типа Python, PHP или, прости Г-споди JavaScript я даже за языки не считаю, какое-то жалкое подобие, созданное людьми с одной лишней хромосомой.

Jefail ★★★★★
()

большая часть разрабов на расте программирует на/для систем на базе Линукс

А это почему так?

cobold ★★★★★
()
Ответ на: комментарий от unclestephen

Дело не в этом. Мне сложно представить размер проекта на Rust, чтобы в условном Zed я чувствовал себя некомфортно на 64 ГБ и следил за свопом.

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

Jefail ★★★★★
()
Ответ на: комментарий от Jefail

Так как бы у сишки тоже слоган «write once, compile everywhere», но… Ну ты понял. Не нужно так близко к сердцу принимать маркетинг.

seiken ★★★★★
() автор топика
Ответ на: комментарий от seiken

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

Отцы тогда сказали: «Язык весьма сложен и наполнен опасными элементами, которые очень легко использовать неправильно. Своей структурой и правилами он никак не поддерживает программирование, нацеленное на создание надёжного и удобного в сопровождении программного кода, напротив, рождённый в эпоху прямого программирования под различные процессоры, язык способствует написанию небезопасного и запутанного кода. Многие профессиональные программисты склонны считать, что на языке можно создавать крайне некачественные решения».

Lusine
()

У раста есть существенный недостаток, его нужно изучать целиком. В отличие от того же С++ который можно изучить на 20% возможностей и фигачить код как на С классами, шаблонами, stl, не приходя в сознание. И ведь нормально получается.

Lusine
()
Ответ на: комментарий от Lusine

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

seiken ★★★★★
() автор топика
Последнее исправление: seiken (всего исправлений: 1)
Ответ на: комментарий от seiken

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

Lusine
()
Ответ на: комментарий от Lusine

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

seiken ★★★★★
() автор топика
Ответ на: комментарий от seiken

А сейчас системы настолько усложнились, что над одним софтом работает 100500 команд разрабов.

seiken ★★★★★
() автор топика
Ответ на: комментарий от seiken

А что за опрос? Странный какой-то язык, на котором пишут в основном под одну платформу. Сразу вспоминается c# и swift

cobold ★★★★★
()
Последнее исправление: cobold (всего исправлений: 1)

Ну его пропихнули очень сильно — я бы очень удивился, если бы он не продолжил что-то там набирать. Но от этого он не перестанет быть чудовищно переусложнённым и медленным в разработке:
https://bykozy.me/blog/rust-is-a-disappointment/

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

byko3y ★★★★
()
Ответ на: комментарий от byko3y

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

Lusine
()

И что же они там погроммируют, интересно знать?

MoldAndLimeHoney ★★
()
Ответ на: комментарий от Lusine

У раста есть существенный недостаток, его нужно изучать целиком. В отличие от того же С++

Обоснуй. Зачем тебе знать, как писать макросы на расте, чтобы написать хелловорлд?

на 20% возможностей и фигачить код как на С классами, шаблонами, stl, не приходя в сознание

Постой, а что входит в остальные 80%? Полный список UB?

unC0Rr ★★★★★
()
Ответ на: комментарий от Lusine

код более быстрый и безопасный чем раст

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

unC0Rr ★★★★★
()
Ответ на: комментарий от Lusine

И? Что мешает писать, не лезя в ту сторону?

unC0Rr ★★★★★
()
Ответ на: комментарий от Lusine

его нужно изучать целиком

С++ который можно изучить на 20%

Разве 100% документации раста не соответствуют по объему 20% С++?)

goingUp ★★★★★
()
Ответ на: комментарий от unC0Rr
struct v2f 
{
    float x;
    float y;
};

v2f addVectorized(const v2f& v1, const v2f& v2) {
    v2f vec;
    __m128 res = _mm_add_ps(
        _mm_loadu_ps((float*)(&v1)),
        _mm_loadu_ps((float*)(&v2))
    );
    memcpy(&vec, res.m128_f32, sizeof(float) * 2);
    return vec;
}
Lusine
()
Ответ на: комментарий от Jefail

Кроме как цитатой Лаврова про дебилов я сложившееся описать не могу.

Вроде ж логично, JVM под целевую платформу (Linux machines with ARM-based CPUs) не допилили - вот и не работает. Или я что-то неправильно понимаю?

aiqu6Ait ★★★★★
()
Ответ на: комментарий от Jefail

Попробуй написать под микроблейзв в блеваде, с отладкой не только софта но и ПЛИС - оперативу отъест на раз-два.

aiqu6Ait ★★★★★
()
Ответ на: комментарий от aiqu6Ait

Вроде ж логично, JVM под целевую платформу (Linux machines with ARM-based CPUs) не допилили - вот и не работает.

Вообще когда вся эта котовасия с Kotlin multiplatform анонсировалась, предполагалось, что это будет конкурент Flutter. Вроде как пишешь приложение, и можешь собрать его в нативное приложение для iOS, Android, Linux, Windows, macOS, Web. А JVM нужна только для разработки. По факту получилось, что нативное оно только для Android, iOS - не щупал, Web - что-то несусветное получается по нагрузке, для всех остальных нужен JRE (кастрированная жаба). Так что тут одно разочарование.

bdrbt
()
Ответ на: комментарий от byko3y

https://bykozy.me/blog/rust-is-a-disappointment/

I just want to write high level logic

Микроскоп хреново приспособлен для забивания гвоздей, ага. Набросай на гошечке свой happy path, потом портируешь. Если понадобится, конечно.

the second you step into the shared mutable state you lose

Сократил во имя истины %)

Nervous ★★★★★
()
Ответ на: комментарий от Lusine

_mm_loadu_ps

loadu

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

unC0Rr ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)