Илья Богданов - Язык программирования Rust - обзор экосистемы

  Рет қаралды 13,254

C++ User Group

C++ User Group

4 жыл бұрын

Ближайшая конференция: С++ Russia 2024, 24 мая (online), 2-3 июня (offline, Москва)
Подробности и билеты: jrg.su/W8skjE
- -
. . . В докладе будет выполнен краткий обзор экосистемы, сложившейся вокруг языка Rust к настоящему времени. Мы рассмотрим нововведения, которые были внесены Rust-сообществом в современную разработку программного обеспечения, и обсудим, как их можно использовать программистам на других языках, включая С++.
Доклад будет интересен тем, кто интересуется новыми веяниями в разработке ПО, и тем, кто хочет поближе узнать, что предлагает язык Rust.

Пікірлер: 32
@andrey8910
@andrey8910 4 жыл бұрын
Спасибо, Илья! Хороший доклад
@cannonjabari310
@cannonjabari310 3 жыл бұрын
I realize it's pretty off topic but do anybody know of a good site to watch newly released tv shows online ?
@liammessiah635
@liammessiah635 3 жыл бұрын
@Cannon Jabari Lately I have been using Flixzone. You can find it on google :)
@userfromworld
@userfromworld 2 жыл бұрын
Спасибо
@ZekeFast
@ZekeFast 4 жыл бұрын
Вместо RLS уже написали rust-analyzer.
@vitaliyzinchenko480
@vitaliyzinchenko480 4 жыл бұрын
Пример на 7:53 скомпилируется, так как примитивы копируются а не перемещаются.
@vitaliyzinchenko480
@vitaliyzinchenko480 4 жыл бұрын
@Nikita Krupitskas Потому, что скопировать i32 к примеру так же дешево как и переместить. 52:20
@andrewvsk2368
@andrewvsk2368 4 жыл бұрын
@@vitaliyzinchenko480 фигово, когда нет единого поведения, тем более что с точки зрения ранней документации это реально не должно было компилироваться или должно было бы выдавать warning т.к. пытаемся получить доступ к неинициализированной let, вместо этого что-то мы копируем, а что-то перемещаем. Печально что в новом языке, который претендует на прозрачность и однозначность (притом сам заставляет явно указывать некоторые фишки, вроде преобразования типов, в том числе в сторону расширения) допускает за кадром подобное поведение. И начинающих работать с языком собьёт с толку, т.к. в литературе сказано одно, а тестируешь - получается другое.
@vladimirmitnitsky1841
@vladimirmitnitsky1841 4 жыл бұрын
В rustbook написанно что будет компилироваться
@kosbarable
@kosbarable 2 жыл бұрын
@@andrewvsk2368 да, ну во всех языках примитивы отличаются от вновь созданных типов, тут разница одна и она очевидная. Мне норм. И объяснение тоже хорошее -- копировать и перемещать примитивы стоит одинаково.
@blackmass4925
@blackmass4925 Жыл бұрын
Можно ли изучать Rust как первый язык программирования?
@mythbuster6126
@mythbuster6126 3 ай бұрын
В качестве первого лучше подойдут Javа, затем Kotlin. А потом можно и Rust, он сложнее раз в 5 минимум, но эта сложность оправдана
@blackmass4925
@blackmass4925 3 ай бұрын
@@mythbuster6126 В rust есть и понятные темы. Я бы начинал с изучения C. Я и въехал благодаря C. Не Basic, не Pascal, не Java, не C++, не Python. Но может быть благодаря учителю на курсах. Если будет нормальный учитель и учебный план и практика, то можно начинать сразу с Rust. Мне так кажется.
@ftinkere
@ftinkere 3 жыл бұрын
Трейты больше похожи на протоколы в clojure
@IExSet
@IExSet 2 жыл бұрын
Два первых места в том бенчмарке сейчас занимает C++.
@danilakapitanov7044
@danilakapitanov7044 4 жыл бұрын
А, ну, могу сказать, а, что, доклад, а, интересный, а, но, как бы можно, а, было бы, ну, например, сократить, а, это доклад, а, в два раза, а, ну.
@user-ji2rb4eh6b
@user-ji2rb4eh6b 4 жыл бұрын
6:50 Переменная - это переменная. Из самого слова "переменная" понятно, что она изменяема. В расте точно это называется переменными?
@StealerSlain
@StealerSlain 3 жыл бұрын
Ну даже в the rust book пишут "immutable variable". Никто уже не вдумывается в этимологию этого слова. "Константная переменная" ни разу не произносил за всё то время, что программируешь?
@user-ji2rb4eh6b
@user-ji2rb4eh6b 3 жыл бұрын
@@StealerSlain нет. Меня, скорее всего, уволили бы за такое) Я говорю "константы")
@nanoqsh
@nanoqsh 3 жыл бұрын
Даже в Haskell, где нет изменяемного состояния (по умолчанию) есть понятие "переменная". Это понятие используется в математическом смысле. Скажем, мы можем связать с X любое значение, но когда связали, присвоить новое уже не можем. Например, у нас есть функция: F(X) = X * X. Так как на месте X может оказаться что угодно, да и применять эту функцию мы можем много раз с разными аргументами, то мы называем это переменной. В Rust есть ещё и константы - то, что вычисляется в момент компиляции. Скорее всего, "изменяемые переменные" так названы, чтобы не путать их с константами.
@alexeypolevoybass
@alexeypolevoybass 3 жыл бұрын
Тебе надо - сделал изменяемой и изменил. В остальное время, когда ты не собираешься в неё писать, она защищена от изменения. А константа и в Африке константа, её поменять во время выполнения не получится.
@YawKar
@YawKar Ай бұрын
Можно называть идентификатором константного значения, идентификатором мутабельного значения
@Dmitry_Timchenko
@Dmitry_Timchenko 3 жыл бұрын
Какой-то слегка мазохистский язык. ;) Хотелось бы иметь "Котлин для системного программирования", дружелюбный инструмент, который программисту помогает, а не стоит над ним с плёткой.
@prettycode4028
@prettycode4028 3 жыл бұрын
тебе никто не мешает писать ансейф. только укажи что код ансейф
@luckystrike91
@luckystrike91 26 күн бұрын
этим он и помогает, что стоит с плеткой. мы уже видели, что происходит, когда язык пытается удовлетворить все, даже самые нелепые хотелки и позволяет говнокодить налево-направо
@Arenoros
@Arenoros 4 жыл бұрын
7.50 это по моему самая тупая "фича", пригорает от такого поведение в c# так как этот тупой компилятор не может разобрать ситуацию когда во всех ветках переменная инициализируется и не может быть так что она не инициирована. А про поведение на 8.20 вообще нет слов. Так то у нас якобы супер константы но мувить мы можем, гениально..
@KaraMaslyatam
@KaraMaslyatam 4 жыл бұрын
На 8:20 не константы, а неизменяемые переменные. let это просто биндинг для рантайм переменной, для compile-time констант ключевое слово const. Но вообще там ошибка и код скомпилируется, потому что i32 - Copy тип (для этого типа реализован трейт Copy, который форсит copy-семантику), а значит обе переменные (точнее, биндинги к переменным) будут валидные.
@user-bu5qy4gh8e
@user-bu5qy4gh8e 4 жыл бұрын
Мне кажется, такое поведение (7:50) в C# - проблема не самой фичи, а её реализации. В Java, например, точно так же нельзя читать потенциально неинициализированную переменную, но я не припомню случаев, когда у компилятора были ложные срабатывания. А вот в том же C++ компилятор не настолько строгий, что, однако, не делает написание кода более удобным, зато заставляет иногда посидеть с отладчиком.
@mikesomebody5404
@mikesomebody5404 4 жыл бұрын
Rust - не компилируется.
@nekosora6036
@nekosora6036 4 жыл бұрын
А что он делает?
@vlaih0
@vlaih0 3 жыл бұрын
Банальная Википедия говорит, что компилируется.
@dzen1234
@dzen1234 3 жыл бұрын
Я так понял, это шутка, выведенная индукцией, что ни один пример из доклада не скомпилировался (якобы, т.к. Илья накосячил с пониманием копирования примитивов).
Антон Полухин - Незаменимый С++
53:03
C++ User Group
Рет қаралды 39 М.
Зачем системным программистам Rust? Сергей Фомин, Яндекс
44:37
Видео с мероприятий {speach!
Рет қаралды 8 М.
ROCK PAPER SCISSOR! (55 MLN SUBS!) feat @PANDAGIRLOFFICIAL #shorts
00:31
Каха ограбил банк
01:00
К-Media
Рет қаралды 10 МЛН
Неприятная Встреча На Мосту - Полярная звезда #shorts
00:59
Полярная звезда - Kuzey Yıldızı
Рет қаралды 6 МЛН
Rust-Based Linux Scheduler Is Faster | Prime Reacts
16:02
ThePrimeTime
Рет қаралды 95 М.
The Pointer to Implementation (pImpl) idiom in C++
6:54
platis.solutions
Рет қаралды 12 М.
Зачем системным программистам Rust? Сергей Фомин, Яндекс
44:37
Видео с мероприятий {speach!
Рет қаралды 7 М.
YOTAPHONE 2 - СПУСТЯ 10 ЛЕТ
15:13
ЗЕ МАККЕРС
Рет қаралды 70 М.
Асинхронный Rust:Stackfull Coroutines vs. Future. Артём Павлов
49:03
Видео с мероприятий {speach!
Рет қаралды 2,1 М.
008. Rust - лучше, чем C++ - Степан Кольцов
1:05:11
Yandex for Developers
Рет қаралды 31 М.
How To Unlock Your iphone With Your Voice
0:34
요루퐁 yorupong
Рет қаралды 27 МЛН
Телефон в воде 🤯
0:28
FATA MORGANA
Рет қаралды 1,2 МЛН
Secret Wireless charger 😱 #shorts
0:28
Mr DegrEE
Рет қаралды 1,7 МЛН