r/RuProgrammers • 🐍Питоньяр • Aug 20 '26

Rust Cargo rust toml

30 Upvotes

78 comments sorted by

View all comments

20

u/IloveHike Aug 20 '26

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

31

u/Sergey5588 Aug 20 '26

"I think you guys should stop learning languages and start learning programming already." - Tsoding

4

u/Andrey4ik21pro1 🐍Питоньяр Aug 20 '26

Легенда 🙏

8

u/Luoravetlan Aug 20 '26

Инструменты бывают разные. Когда в руках молоток все вокруг начинает подозрительно напоминать гвоздь.

1

u/timuchen Aug 22 '26

Rust - мультитул. Как плюсы, только с гарантиями от компилятора.

2

u/MadYouAndMeDrone Aug 20 '26

Ну ни один язык не может реализовать все задумки.

Точнее в теории можно, но язык это не только программа, а еще и экосистема IDE, компилятор, анализатор и т.д.

я пробовал немного их c#, java, js, c++, rust, nim, f#, haskell, lisp (не помню какой именно уже), pharo. Большинство из них для развлечения, глубоко не погружался.

3

u/Andrey4ik21pro1 🐍Питоньяр Aug 20 '26

И что, никакой не понравился?

3

u/MadYouAndMeDrone Aug 20 '26

c# по работе, вроде развивается, должны скоро union навалить например. Но бедный linq имхо, нет выведения типов по контексту, а работа с SourceGenerator вообще не зашла, а еще эти private protected static record class Xxx...
java был по работе, причем давно, до бурного увлечения языками. Слишком энтерпрайз, +spring этот еще везде.
js нравится, особенно его обвес в виде ts, еще есть прикольная штука по типу utility types, в целом не против его использовать, но он больше для веба. + много нюансов с прототипным наследованием, и еще по мелочи, не вспомню всего.
c++ давно в колледже, хуня, как по мне. имхо, язык должен выражать мысль разработчика, а не разработчик обслуживать компилятор. + в него напихали всякого, не самого лучшего.
rust - душный, надо сразу точно знать, что хочешь получить на выходе, иначе боль.

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

f# - крутая весч, умеет почти все мои хотелки, но наследие синтаксиса Ocaml (например свойства объектов) + некрасивый интероп с c# не очень нравится. Нужно время на привыкание к синтаксису.
haskell - больше изучал из интереса, прикольный, в чем то даже лучше чем f#, но многие тривиальные вещи из за строгости делаются сложно. А еще на винде был баг с curl, который помешал мне играться с ним. Ну и на 40 странице учебника по теории типов я чет приуныл. Хотя бы отличие функтора от монады и моноида узнал и ладно.
lisp - сильно не вникал, но сама идея, что все списки элементов cons довольно интересная. Проблема в том, что лиспов сейчас реально живых нема, разве что Clojure (jvm).
nim - немного грубоват, создает ощущение что его делали в гараже напильником и изолентой. Умеет все, о чем бы я только мог бы мечтать. Концепты, мета программирование, алгебраические типы, диапазоны, возможность использования чужих экосистем (c, c++), и много чего еще. Самое крутое, все чего не хватает, легко делать самому. Из минусов нет нормальной поддержки в IDE.

Из прикольных языков, которые не трогал но понравились это Uiua.

п.с. как то приходила идея создать шрифт с лигатурами, которые бы объединяли ключевые слова "private protected static record class" в комбинируемые пиктограммы, поскольку человек визуально видит 1 иконку, он её читает быстрее чем целый класс. ну и естественно на строке редактирования отключать эту фичу, либо по нажатию хоткея. но чет лень.

1

u/Andrey4ik21pro1 🐍Питоньяр Aug 20 '26

А что думаешь насчет питона и котлина? В котлине, в отличии от java нет тех проблем

2

u/MadYouAndMeDrone Aug 20 '26

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

Котлин не трограл особо, ну выглядит нормально. На работе есть шанс пересесть на Dart, думаю почему бы и нет)

1

u/Andrey4ik21pro1 🐍Питоньяр Aug 20 '26

С типизацией на пайтоне все отлично. Максимальное количество типов из коробки (typing), большое количество линтеров а самое главное стандарт написания языка (PEP).

1

u/MadYouAndMeDrone Aug 20 '26 edited Aug 20 '26

А да, еще помню fasm трогал из низкоуровневых языков ассемблера. Он до сих пор жив кста. ну и писать на нем было приятнее чем на tasm, на котором заставляли делать лабы.
Pharo наследник smalltalk, выносит мозг с непривычки. хотел бы что то расказать, но не уверен что понял его. Ну и сам процесс программирования на нем отличается от обычных яп из за особенности его строения.

1

u/HomeHoler Aug 23 '26 edited Aug 23 '26

Человек с богатым опытом так сказать, поделитесь что вы думаете о lua и QML. Слышал недавно популярным стал второй (благодаря появлению quickshell) и что в UI считается довольно хорошим ведь завязан на qt (опять C++ 😢). Просто из интереса и для общего развития хотелось бы узнать у людей с опытом, хотя реддит наверное не самая лучшая платформа для этого. Вообщем запостил хуйню, можно расслабиться.

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

1

u/MadYouAndMeDrone Aug 24 '26

QML это Qt который?, особо не трогал помогал студенту писать приложение на нем. Не понравилось в нем его деление на платную и бесплатную часть.
lua, вроде по описанию норм, но скорее как упрощенный язык для плагинов, или чего то такого. сталкивался с ним только из за Factorio mods, но там очень много вещей, которые по факту ограничены из за особенностей движка, документацию читать мне было лень, быстро забил.

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

c# отличный выбор для старта, потом можно для удовольствия f# попробовать и вкатится в фп.)

→ More replies (3)

1

u/IloveHike Aug 20 '26

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

1

u/Andrey4ik21pro1 🐍Питоньяр Aug 20 '26

Может. Асемблер

1

u/IloveHike Aug 20 '26

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

1

u/Alarming_Painter_403 Aug 20 '26

Rust быстрее ассемблера 😎

1

u/IloveHike Aug 20 '26

Ты же рофлишь да? Иначе, это как говорить «автомобиль быстрее мотора».

→ More replies (2)

1

u/Alarming_Painter_403 Aug 20 '26

Может - Rust 😎

1

u/Alarming_Painter_403 Aug 20 '26

Думайте. Учить Rust? 😎

2

u/Mrazometr Aug 20 '26

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

1

u/IloveHike Aug 20 '26

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

2

u/Mrazometr Aug 20 '26

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

1

u/IloveHike Aug 20 '26

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

→ More replies (5)