URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 130274
[ Назад ]

Исходное сообщение
"Выпуск языка программирования Rust 1.69"

Отправлено opennews , 20-Апр-23 22:57 
Опубликован релиз языка программирования общего назначения Rust 1.69, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки)...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=59008


Содержание

Сообщения в этом обсуждении
"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 20-Апр-23 22:57 
Сеть в стандартной библиотеке. Найс.

"Выпуск языка программирования Rust 1.69"
Отправлено НяшМяш , 20-Апр-23 23:28 
Всегда была.

"Выпуск языка программирования Rust 1.69"
Отправлено bOOster , 21-Апр-23 10:41 
Была абстракция - сокеты, которые можно было привязать к любому протоколу передачи данных. А тут IP гвоздями прибит - что в целом подтверждает абсолютную тупость создателей языка.

"Выпуск языка программирования Rust 1.69"
Отправлено НяшМяш , 21-Апр-23 10:52 
> Была абстракция - сокеты
> А тут IP гвоздями прибит

Вот было мороженое из молока. А тут Москвич китайский.

Всё что нужно знать про экспертов опеннета.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:40 
Но, ведь, он и вправду китайский.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 14:32 
А получился не Москвич, а какой-то Москвичезаменитель, неидентичный натуральному

"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 21-Апр-23 14:35 
socket = boost::filesystem::file_type::socket_file,

"Выпуск языка программирования Rust 1.69"
Отправлено bOOster , 21-Апр-23 14:58 
> socket = boost::filesystem::file_type::socket_file,

Очередные гвозди, теперь уже к файловой системе.


"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 21-Апр-23 15:08 
Надо было раньше писать в Boost, пока в стандарт не приняли.

"Выпуск языка программирования Rust 1.69"
Отправлено bOOster , 22-Апр-23 09:40 
> Надо было раньше писать в Boost, пока в стандарт не приняли.

Так я об этом изначально и писал. Недоразработчикам ржи надо было использовать опыт 40+ летнего развития языков C/C++, но эти при*урки пердячим паром доходят через свое ан*льное отверстие. Причем еще и получается - так себе..


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 20-Апр-23 23:43 
Как будто что-то плохое. Кроссплатформа как-никак. На сишке здесь бы пришлось завязаться на какой-нибудь нескучный glib.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 08:24 
А что тогда графики и звука в стандартной библиотеки нету?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 10:10 
Графика - это гуй? В разных операционках он слишком разный. Да что там - он разный даже внутри одной операционки (gtk/qt, x11/wayland). А концепт сети везде одинаковый: IP-адрес - он и в Африке IP-адрес. Башкой думай немного, хорошо?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 11:49 
> А концепт сети везде одинаковый: IP-адрес - он и в Африке IP-адрес.

мамкин сетевик не подозревает что кроме IP сетей есть другие сети

https://www.5gtechnologyworld.com/internet-protocol-the-work.../


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:12 
> мамкин сетевик не подозревает что кроме IP сетей есть другие сети

Это легко исправляется: читай соответствующие книги по сетевой модели OSI, и тогда ты перестанешь быть "мамкиным сетевиком". Затем вернись сюда через годик или два и отпишись, каким образом наличие "других сетей" мешает расту добавить стандартные средства по работе с популярным протоколом IP.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:24 
> каким образом наличие "других сетей" мешает расту добавить стандартные средства по работе с популярным протоколом IP

почему бы не добавить стандартные средства к другим популярным протоколам Wayland например ?
Ну просто сейчас корпорациям-основателям расты нужны дешёвые мамкины сетевики.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:57 
>> каким образом наличие "других сетей" мешает расту добавить стандартные средства по работе с популярным протоколом IP
> почему бы не добавить стандартные средства к другим популярным протоколам Wayland например?

Сравнил популярность вида "все ОС, от гайки и до венды" и "используется 30% от 2%"

> Ну просто сейчас корпорациям-основателям расты нужны дешёвые мамкины сетевики.

Они уже 20 лет назад были нужны, оналитег папкин ...



"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 16:38 
> Сравнил популярность вида "все ОС, от гайки и до венды" и "используется 30% от 2%"

реальное соотношение С vs Rust

> Они уже 20 лет назад были нужны

20 лет назад не было андроидов и айфонов и раст бананоедам не впихивали


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 18:25 
> почему бы не добавить стандартные средства к другим популярным протоколам Wayland например?
>> Сравнил популярность вида "все ОС, от гайки и до венды" и "используется 30% от 2%"
> реальное соотношение С vs Rust

Реальный спрыг с неудобной темы ...


"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 21-Апр-23 14:33 
>> каким образом наличие "других сетей" мешает расту добавить стандартные средства по работе с популярным протоколом IP
> почему бы не добавить стандартные средства к другим популярным протоколам Wayland например
> ?

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


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:20 
Ок, но TCP/IP может не быть в ОС вообще, к примеру. Или быть, но API не является BSD sockets. Все равно будет работать? Сеть, как и графика, тоже бывает разная в разных ОС.

> он разный даже внутри одной операционки (gtk/qt, x11/wayland)

тулкиты и протоколы то тут причем, клован? Почему нет нативной графики в обход всех тулкитов и протоколов в стандратной библиотеке?


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:32 
> Сеть, как и графика, тоже бывает разная в разных ОС.

Если включать в раст только те вещи, которые абсолютно совпадают всегда и везде, то из раста придется убрать даже поддержку по работе с файлами, ибо в разных файловых системах все немного по-разному. Думай немного прагматично, ок? IP-адрес -- это понятие из RFC, а не из имплементации.

> тулкиты и протоколы то тут причем, клован? Почему нет нативной графики в обход всех тулкитов и протоколов в стандратной библиотеке?

Потому что "графика" -- это понятие из имплементации, а не из RFC, клован.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 13:34 
> Ок, но TCP/IP может не быть в ОС вообще, к примеру

ну так в твою прогу при компиляции соотвественно данный кусок стандартной библиотеки и не вкомпилится, ибо не используется. В чем проблема? Это почти как:

"
- Мне положено мясо!
- Положено - ешь.
- Но оно не положено!
- Не положено - не ешь.
"

> Сеть, как и графика, тоже бывает разная в разных ОС.

Модель TCP/IP и пучок соответствующих отраслевых стандартов одинаков для всех иначе разные ОС не могли бы устанавливать друг с другом соединения и гонять байтики. Как оно там внутри будет реализовано - дело десятое.


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 12:39 
Так и сетевая подсистема в разных операционках слишком разная, даже в разных версиях линуха.
С таким же успехом можно сказать концепт гуя тоже везде одинаков - везде поверхности рисовать и реакции пользователя отслеживать, чем собственно qt, gtk успешно занимаются даже с кроссплатформой.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:48 
> сетевая подсистема в разных операционках слишком разная

Ага, как и файловые системы: одни case-sensitive, другие нет. Одни дают DAC, другие нет. Одни с xattrs, другие нет. Одни поддерживают subvolumes, другие нет. Вывод: срочно убираем файлы из стд библиотеки! Они слишком по-разному себя ведут!


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 12:52 
>> сетевая подсистема в разных операционках слишком разная
> Ага, как и файловые системы: одни case-sensitive, другие нет. Одни дают DAC,
> другие нет. Одни с xattrs, другие нет. Одни поддерживают subvolumes, другие
> нет. Вывод: срочно убираем файлы из стд библиотеки! Они слишком по-разному
> себя ведут!

Могу с этим только согласиться.


"Выпуск языка программирования Rust 1.69"
Отправлено Советский инженер , 24-Апр-23 01:50 
https://en.cppreference.com/w/cpp/filesystem  ну все, давай убирай.

"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 24-Апр-23 11:44 
> https://en.cppreference.com/w/cpp/filesystem  ну все, давай убирай.

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


"Выпуск языка программирования Rust 1.69"
Отправлено Иваня , 21-Апр-23 06:09 
А что в этом плохого? В Python, Java, Go тоже и отлично.

"Выпуск языка программирования Rust 1.69"
Отправлено AlexCr4ckPentest , 21-Апр-23 07:36 
> Сеть в стандартной библиотеке. Найс.

И что плохого?
во многих ЯП в стд есть модули для работы с сетью, ну кроме C и C++
Это удобно


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 08:14 
В

> ЯП

не нужно совать то, что является функцией фреймворка.


"Выпуск языка программирования Rust 1.69"
Отправлено AlexCr4ckPentest , 21-Апр-23 09:07 
> ...является функцией фреймворка

Простите, какого фреймворка?
Тот, который еще нужно собрать на все платформы и молиться, чтобы вообще собрался?
А зачем вообще фреймворк тащить, если тебе нужна только сеть?

Намного удобнее использовать модуль для работы с сетью из std, с гарантией при этом получив одинаковое поведение на всех платформах
А если не нужен - не подключай его, в чем проблемы?


"Выпуск языка программирования Rust 1.69"
Отправлено BeLord , 21-Апр-23 09:22 
Не надо иметь зоопарк фреймворков на типовые вещи, работа с сетью штука типовая. А то потом получается, что реально программа имеет две операции записи/чтения, а весит, как крыло Боинга и тащит кучу зависимостей.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:23 
> А то потом получается, что реально программа имеет две операции записи/чтения, а весит, как крыло Боинга и тащит кучу зависимостей.

ты не туда воюешь, ты сейчас описал как программы на раст и выглядят.


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 12:49 
Наивные. Одним нужна либа с максимально производительной реализацией, другим нужно чтобы 192.168.36095 считался валидным ip адресом, третьи предпочтут 0000000001.0000000002.0000000003.000000004, четвертые 0xc0.0xa8.0x8c.0xff. И это мы еще не добрались до IPv6, подсетей, мультикастов, а если у нас не ip сеть....
Понятно, что 192.168.140.255 хватит в 99% случаев и возможно остальные варианты стоит прикопать, но это только пример одного вопроса реализации. И что-то мне кажется что выбор должен делать пользователь, а не язык должен указывать пользователю как жить.

"Выпуск языка программирования Rust 1.69"
Отправлено annonn , 21-Апр-23 13:49 
ты не попал в эти 99% ?
ты как одинокая картошечка фри ?

ну, тогда ты всегда можешь написать свою библиотеку для "особенных" пользователей сети где будет разрешено 192.168.0000000003.0x8c
и пользоваться ею


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 15:12 
> ты не попал в эти 99% ?
> ты как одинокая картошечка фри ?
> ну, тогда ты всегда можешь написать свою библиотеку для "особенных" пользователей сети
> где будет разрешено 192.168.0000000003.0x8c
> и пользоваться ею

Может мне еще свой одаренный язык для особенно одаренных написать? Постойте-ка, это же...


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 13:56 
> другим нужно чтобы 192.168.36095 считался валидным ... И это мы еще не добрались до IPv6

Что за бред. Есть стандартная отраслевая модель TCP/IP. Для IP4 и IP6. Там "все ходы расписаны". Для всех распространенных ОС, которые хотят взаимодействовать с другими ОС (особенно через Интернет), она одна и та же. Для 99.9% разработчиков, связанных с сетью хоть как-то, хоть косвенно (через чужие библиотеки), не нужно чтобы было нестандартно. Если ты хочешь такой бред, как написал - реализуешь свою собственную библиотеку. А стандартная библиотека языка реализует стандартную модель TCP/IP. Самую распространенную и востребованную.

> Одним нужна либа с максимально производительной реализацией

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

> а если у нас не ip сеть....

тем более только свои костыли, вроде очевидно. И эта очевидная необходимость совсем-совсем не является аргументом не реализовывать в стандартной библиотеке отраслевые стандарты, нужные "в 99% случаев"


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 15:03 
>> другим нужно чтобы 192.168.36095 считался валидным ... И это мы еще не добрались до IPv6
> Что за бред. Есть стандартная отраслевая модель TCP/IP. Для IP4 и IP6.
> Там "все ходы расписаны".

Не знаю что такое отраслевая модель TCP/IP (в отличии от просто модели TCP/IP). Но этот бред и есть ip адрес по RFP'шкам для IPv4, там указано 32 бита, а в каком представлении - не указано (то есть далеко не все ходы расписаны). Для IPv6 указано, но довольно замороченно, я бы не рискнул писать парсер по стандарту.

> тем более только свои костыли, вроде очевидно. И эта очевидная необходимость совсем-совсем
> не является аргументом не реализовывать в стандартной библиотеке отраслевые стандарты,
> нужные "в 99% случаев"

Но тогда стандартная библиотека становится не стандартной, а скорее встроенной. И это грозит новыми проблемами с определением что считается стандартным случаем, а что нет. Так сделали например в python'е и в обрезанных версиях python'а для микроконтроллеров (справедливости ради python и не был  спроектирован для микроконтроллеров) стандартная либа часто обрезанная и не всегда может запустить "стандартные" же скрипты. Для питона это скорее ССЗБ, но для плюсов например реализация стандартных регулярок вызвала массу (справедливого) негатива. Так может все же язык оставить языком, реализации реализациями, а либы либами и не смешивать их? Впрочем для раста и линтер с компилятором решили объединить, а я тут с какими-то философскими проповедями пришел.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 15:35 
Для такого у тебя есть nostd. Там нет практически ничего и все что нужно приходится тащить либами.
В std с++ есть Algorithms, которым по такой логике тоже там не место. Но они так есть.
А в сишной - есть math.h, который должны лежать в отдельной мат либе что ли?

"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 15:44 
> Для такого у тебя есть nostd. Там нет практически ничего и все
> что нужно приходится тащить либами.

Норм
> В std с++ есть Algorithms, которым по такой логике тоже там не
> место. Но они так есть.
> А в сишной - есть math.h, который должны лежать в отдельной мат
> либе что ли?

Да. Я и не защищаю си в этом контексте


"Выпуск языка программирования Rust 1.69"
Отправлено Совершенно другой аноним , 21-Апр-23 16:23 
Касательно math.h - так и есть, есть физически отдельная мат.либа libm.a.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 16:47 
Эти технически отдельная либа (файл), но фактически это часть стандартной либы языка си
C99 standard (ISO/IEC 9899:1999): 7.12 Mathematics <math.h>
Т.е. sin/cos/etc. зачем-то запихали в std.

"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 22-Апр-23 07:53 
Мало того - стандарт обязывает поддержку математики даже для freestanding implementation. А вот это как раз тот рантайм (как минимум, флаги FPU должны быть настроены), которого у Си якобы нет.

"Выпуск языка программирования Rust 1.69"
Отправлено Совершенно другой аноним , 22-Апр-23 11:26 
Стандарт описывает характеристики типов с плавающей запятой, там нет функций. Настройка флагов FPU идёт в fenv.h, который не обязателен для freestanding.

"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 22-Апр-23 14:03 
> Стандарт описывает характеристики типов с плавающей запятой, там нет функций.

То есть имплементация поддерживает плавающий тип данных. Значит, может производить арифметические операции. Соответственно, при переключении контекста (потока исполнения) ОС вынуждена сохранять регистры FPU.

В ядре из соображений экономии времени и памяти FPU не используется (при необходимости принимаются дополнительные меры) и формально получается, что там не conforming.

> Настройка флагов FPU идёт в fenv.h, который не обязателен для freestanding.

fenv.h позволяет пользователю настроить по своему желанию.

FLT_ROUNDS из float.h implementation-defined, но при этом он одинаков при каждом запуске после трансляции, то есть имплементация должна дать гарантии.

в частности в glibc флаги настраиваются по цепочке __libc_init_first --> posixland_init --> __setfpucw


"Выпуск языка программирования Rust 1.69"
Отправлено Совершенно другой аноним , 22-Апр-23 20:41 
>> Стандарт описывает характеристики типов с плавающей запятой, там нет функций.
> То есть имплементация поддерживает плавающий тип данных. Значит, может производить арифметические
> операции. Соответственно, при переключении контекста (потока исполнения) ОС вынуждена
> сохранять регистры FPU.

какие в freestanding потоки? и какая ОС?

> В ядре из соображений экономии времени и памяти FPU не используется (при
> необходимости принимаются дополнительные меры) и формально получается, что там не conforming.

Вы про ядро, а при чём тут компилятор?

>> Настройка флагов FPU идёт в fenv.h, который не обязателен для freestanding.
> fenv.h позволяет пользователю настроить по своему желанию.
> FLT_ROUNDS из float.h implementation-defined, но при этом он одинаков при каждом запуске
> после трансляции, то есть имплементация должна дать гарантии.
> в частности в glibc флаги настраиваются по цепочке __libc_init_first --> posixland_init
> --> __setfpucw

это реализовано в libc. У нас есть своя программа, которую можно назвать прошивкой, там ничего этого нет, и ничего от gcc, который компилирует эту программу мы не требуем.


"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 23-Апр-23 08:33 
>>> Стандарт описывает характеристики типов с плавающей запятой, там нет функций.
>> То есть имплементация поддерживает плавающий тип данных. Значит, может производить арифметические
>> операции. Соответственно, при переключении контекста (потока исполнения) ОС вынуждена
>> сохранять регистры FPU.
> какие в freestanding потоки? и какая ОС?

Если я делаю conforming implementation, приходится учитывать окружение, где будет запускаться собранная программа. Если мне надо обеспечить компиляцию хелловорда в пригодный для запуска в Linux образ ELF размером 1,5 Кб, и при этом сохранить поддержку библиотекой полезных программ, то возникает вопрос - а что делать с флагами FPU и соответствием стандарту. А Вы с какой целью интересуетесь?

>> В ядре из соображений экономии времени и памяти FPU не используется (при
>> необходимости принимаются дополнительные меры) и формально получается, что там не conforming.
> Вы про ядро, а при чём тут компилятор?

Я про стандартную библиотеку, которая формально для ядра Linux отсутствует.

>>> Настройка флагов FPU идёт в fenv.h, который не обязателен для freestanding.
>> fenv.h позволяет пользователю настроить по своему желанию.
>> FLT_ROUNDS из float.h implementation-defined, но при этом он одинаков при каждом запуске
>> после трансляции, то есть имплементация должна дать гарантии.
>> в частности в glibc флаги настраиваются по цепочке __libc_init_first --> posixland_init
>> --> __setfpucw
> это реализовано в libc. У нас есть своя программа, которую можно назвать
> прошивкой, там ничего этого нет, и ничего от gcc, который компилирует
> эту программу мы не требуем.

Вопрос не в том, можно ли назвать прошивкой. Можно ли назвать используемую там библиотеку соответствующей стандарту имплеменатцией.


"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 22-Апр-23 07:49 
Алгоритмы с++  в std попали из библиотеки Степанова и Ли (СТЛ). Были они созданы как раз для "решения проблем Си" -- безопасной работы с массивами, наряду с контейнерами и итераторами. Это слой абстракции, а не реализация математики или работы с файлами (в частном случае сокетами). В других языках подобное встроено в язык, а не библиотеку. Впрочем, сокеты в std:: тоже добавили.

"Выпуск языка программирования Rust 1.69"
Отправлено Someone , 29-Май-23 08:46 
> 0000000001.0000000002.0000000003.000000004, четвертые 0xc0.0xa8.0x8c.0xff.

Верхний адрес не валидный, так как занимает 40 байт места. Нижний вполне нормальный адрес 192.168.140.255. В IPv4 четко прописаны использование 32 Битов или 4 байтов. То есть все адреса (комбинации нулей и единиц) от 0000 0000 0000 0000 до 1111 1111 1111 1111 (или от 0x00 0x00 0x00 0x00 до 0xFF 0xFF 0xFF 0xFF)


"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 29-Май-23 12:55 
> В IPv4 четко прописаны использование 32 Битов или
> 4 байтов. То есть все адреса (комбинации нулей и единиц) от
> 0000 0000 0000 0000 до 1111 1111 1111 1111 (или от
> 0x00 0x00 0x00 0x00 до 0xFF 0xFF 0xFF 0xFF)

Все верно. Это я и хотел сказать уважаемой публике.

>> 0000000001.0000000002.0000000003.000000004, четвертые 0xc0.0xa8.0x8c.0xff.
> Верхний адрес не валидный, так как занимает 40 байт места.

Но 0000000001.0000000002.0000000003.000000004 тоже может занимать 32 бита, если не считать первые нули значащими (что конечно конечно наркомания, но в IPv6 так и сделали, ну почти). Т.е. он тоже может быть валидным адресом. Можно пойти дальше и сделать адресом ツ
$ echo -n 'ツ' | xxd -b
00000000: 11100011 10000011 10000100
Добиваем до 4 байт (или наоборот отрезаем, если больше)
00000000 11100011 10000011 10000100
И оп, у нас валидный ip-адрес. Т.е. по сути все может быть ip-адресом в зависимости от парсера (таков путь неограниченных бинарных данных).


"Выпуск языка программирования Rust 1.69"
Отправлено Герман , 25-Апр-23 10:20 
А минусы есть?

"Выпуск языка программирования Rust 1.69"
Отправлено Вы забыли заполнить поле Name , 21-Апр-23 01:44 
А ядро с какой версией работает?

"Выпуск языка программирования Rust 1.69"
Отправлено Аночик , 21-Апр-23 03:02 
С той с которой скомпилируете модуль

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 08:15 
Один выше попутал ЯП с фреймворком. Другой попутал ЯП с компилятором. Контингент, однако.

"Выпуск языка программирования Rust 1.69"
Отправлено FF , 21-Апр-23 12:17 
А третий просто демагог и нигде не работал и ни одной проги не написал.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 13:53 
Сходи поработай. И может прогу какую напиши в свободное время.

"Выпуск языка программирования Rust 1.69"
Отправлено наним , 21-Апр-23 10:07 
Начиная с ядра 6.1 рекомендуют 1.62, т.к. используются нестабильные фичи Раста. С ворнингами разрешают и более свежие версии использовать, но говорят, что не факт, что всё будет хорошо. Недавно сделали патч с обновлением до 1.68.2 (https://www.phoronix.com/news/Linux-Kernel-Rust-1.68).

"Выпуск языка программирования Rust 1.69"
Отправлено Вы забыли заполнить поле Name , 21-Апр-23 14:02 
Ну и вот зачем такой язык в ядре? Чтобы обмазываться новеньким постоянно?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 06:29 
>Добавлена возможность использования флагов true и false в аргументах компилятора.

Теперь ещё проще скомпилировать не тру.


"Выпуск языка программирования Rust 1.69"
Отправлено AlexCr4ckPentest , 21-Апр-23 07:38 
Что на этот раз сломали?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 14:32 
Ленивый или троллить пытаешься или просто позвиздеть зашел?

Пройди в анонс, там зайди в "Others Changes"->"Rust". Там есть раздел "Compatibility Notes"

(ой, вдруг заблудишься):
https://github.com/rust-lang/rust/blob/stable/RELEASES.md#co...

но тебе ведь всё этого не нужно, верно?

Всё же, помечУ бисер немного. Очень-очень поверхностно отчитаюсь. Полез проверить заброшенный 2 года назад микропроектик, пробу язычка ткскзть - дерганье сервиса криптобиржи, получение разных списков. Запустил на компиляцию. Ругнулось ошибкой. Обновил крейты (за два года что-то наверное могло поменяться, ведь правда?) - cargo update (да-да, я наивный лох, лезу в официальный репо, с троянами, пока не завел себе локальный сервак с репой с нужными мне и лично отобранными и проверенными построчно крейтами, хе-хе). Куча всего обновилось, что-то выкинулось (причем и тот крейт, где ошибка вылезла), что-то добавилось. Компиляция. Запуск. Всё отработало красиво, json-портянки вернулись. Если бы я с этим работал плотно, внимательно читал все варнинги, а не запускал на компиляцию/выполнение два раза в год для проверки "а не сломалось ли чё" - было бы вообще всё пучком.

Повторюсь: за точным списком сломанного - пройдите в анонс, пжалста. Кстати, всплывшая у меня ошибка как раз указана там - "Unaligned references to packed fields are now a hard error. This has been a warning since 1.53, and denied by default with a future-compatibility warning since 1.62.". Просто я забивал на варнинги, ведь не продакшн какой.


"Выпуск языка программирования Rust 1.69"
Отправлено Michael Shigorin , 21-Апр-23 16:26 
> Rust
> криптобиржи
> не продакшн

"В человеке всё должно быть прекрасно" (ц) ДМБ


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 23-Апр-23 22:30 
>> Rust
>> криптобиржи
>> не продакшн
>"В человеке всё должно быть прекрасно" (ц) ДМБ

вопрос конечно был про другое, про "что поломано в этой версии" и не очень хорошо скрытая издевка о том что  "в новых версиях ломаются старые проекты" (_частично_ верно, а не абсолютно и не однозначно, как утверждают наСИльники), но...

По выборочно выдернутому из контекста (у Вас пунктик на эти слова? Сразу в стойку?) - а почему не выдернуто туда же - "заброшенный 2 года назад микропроектик, пробу язычка ткскзть"? Этого недостаточно понять, почему "не продакшн"? Слово "заброшенный" Вам неизвестно?


"Выпуск языка программирования Rust 1.69"
Отправлено Пряник , 21-Апр-23 09:29 
Поставить его без рута - та еще загадка.

"Выпуск языка программирования Rust 1.69"
Отправлено bOOster , 21-Апр-23 10:43 
На это и рассчет.

"Выпуск языка программирования Rust 1.69"
Отправлено НяшМяш , 21-Апр-23 10:54 
Rustup ставит в домашнюю директорию, дополнительных прав не требуется.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 16:14 
rustup - сразу нахрен. sudo apt-get install.

"Выпуск языка программирования Rust 1.69"
Отправлено НяшМяш , 22-Апр-23 15:01 
Человек попросил без рута, я ему ответил. К чему тут твоё экспертное мнение - непонятно.

"Выпуск языка программирования Rust 1.69"
Отправлено Карлос Сношайтилис , 21-Апр-23 20:51 
Попробуй команды ЗАПУСКАТЬ.
Просто смотреть в терминал помогает редко.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 10:48 
Шутку упустили "happy to announce a nice version of Rust".

Версия 69 вышла 4.20. 69 - отсылка к сексу. 420 - к конопле. "nice" мемная реакция на эти числа. Вот такие вот приколы для даунов.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 11:47 
Что такое секс?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 12:38 
Компиляция Rust.

"Выпуск языка программирования Rust 1.69"
Отправлено Michael Shigorin , 21-Апр-23 16:27 
> Вот такие вот приколы для даунов.

DIDO


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 14:00 
Релиз не языка программирования, а его реализации

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 14:14 
В Расте реализация и язык, одно и то же. Разратотчики, проектировщики и дизайнеры тусуются в одной организации - Rust foundation. Это не ISO язык, как сишка. Хотя комитет по стандартизации языка Си, тоже своего рода тусовка, где все хорошо знакомы.

"Выпуск языка программирования Rust 1.69"
Отправлено keydon , 21-Апр-23 15:08 
> В Расте реализация и язык, одно и то же. Разратотчики, проектировщики и
> дизайнеры тусуются в одной организации - Rust foundation. Это не ISO
> язык, как сишка. Хотя комитет по стандартизации языка Си, тоже своего
> рода тусовка, где все хорошо знакомы.

Язык-реализация-библиотека-компилятор-линтер-пакетный-менеджер-все-едино-в-этом-адском-мире-трансгендерных-негро-феминисток-каждый-сможет-стать-кем-захочет-хоть-интерпретатором.


"Выпуск языка программирования Rust 1.69"
Отправлено InuYasha , 21-Апр-23 14:18 
Согласно требованиям Rust Foundation в этом яп тип Gender - это не bool а signed int? :)

"Выпуск языка программирования Rust 1.69"
Отправлено pashev.ru , 21-Апр-23 14:37 
Нет. Придумай свой специализированный тип.

"Выпуск языка программирования Rust 1.69"
Отправлено someanon , 21-Апр-23 14:42 
double

"Выпуск языка программирования Rust 1.69"
Отправлено xsignal , 21-Апр-23 14:51 
complex

"Выпуск языка программирования Rust 1.69"
Отправлено InuYasha , 21-Апр-23 15:02 
> complex

real + imagine? два чая этому господину! :_D


"Выпуск языка программирования Rust 1.69"
Отправлено 111 , 21-Апр-23 17:46 
Лучше реализовать Gender через енум какой-нибудь.

"Выпуск языка программирования Rust 1.69"
Отправлено Карлос Сношайтилис , 21-Апр-23 20:54 
Есть только два гендера: True и Not True.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 14:40 
Rust это современный Lisp. Про него все говорят но никто не пишет.

"Выпуск языка программирования Rust 1.69"
Отправлено Kswapd , 21-Апр-23 16:03 
Как никто не пишет? (картинка с коалой)

"Выпуск языка программирования Rust 1.69"
Отправлено Michael Shigorin , 21-Апр-23 16:28 
Эх Вас перекорёжило... лисп полезен хотя бы для расширения кругозора, а не "сознания".  Ну и пишут, да -- в альте вон альтератор на scheme.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 16:38 
И привели пример еще более бесполезной штуки

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 16:39 
Ну ладно, Lisp полезней чем Rust.

"Выпуск языка программирования Rust 1.69"
Отправлено pashev.ru , 22-Апр-23 22:56 
> Эх Вас перекорёжило... лисп полезен хотя бы для расширения кругозора, а не
> "сознания".  Ну и пишут, да -- в альте вон альтератор
> на scheme.

http://git.pashev.ru/mendeleev/tree/mendeleev.lisp


"Выпуск языка программирования Rust 1.69"
Отправлено Ananimus , 23-Апр-23 13:26 
Ага, я заметил, когда наткнулся на абсолютно всратые баги типа такого:

; IMPORTANT! For some reason this must be the last entry. I don't know why but
; installer does not parse anything past ("/grub" ...).

; Install GRUB in /boot/efi
("/grub" action "write" device "efi")


"Выпуск языка программирования Rust 1.69"
Отправлено VladSh , 21-Апр-23 19:06 
На List под AutoCAD уже более 30 лет скрипты пишутся.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 23-Апр-23 15:11 
Его выбросили не так давно. Внедрили Python, или что-то такое.

"Выпуск языка программирования Rust 1.69"
Отправлено VladSh , 24-Апр-23 19:34 
> Его выбросили не так давно. Внедрили Python, или что-то такое.

Это для меня новость, спасибо!


"Выпуск языка программирования Rust 1.69"
Отправлено Someone , 29-Май-23 09:01 
Да если бы. Живой сволочь

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 21:19 
https://www.rust-lang.org/ru/production/users
И еще Google новые компоненты для андроида на Раст пишет

"Выпуск языка программирования Rust 1.69"
Отправлено InuYasha , 23-Апр-23 10:42 
> И еще Google новые компоненты для андроида на Раст пишет

это печально.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 23-Апр-23 16:28 
Гугол много на чем пишет.

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 21-Апр-23 17:41 
Язык со встроенным пакетным менеджером... Теперь я видел всё.

"Выпуск языка программирования Rust 1.69"
Отправлено Карлос Сношайтилис , 21-Апр-23 20:56 
Неправильно ты, Дядя Фёдор, мыслишь.
Это пакетный менеджер со встроенным языком!

"Выпуск языка программирования Rust 1.69"
Отправлено Хз , 22-Апр-23 02:59 
Это как бы Си для нубов ?

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 22-Апр-23 05:55 
С? Это чё еще за ассемблер для неосиляторов?

"Выпуск языка программирования Rust 1.69"
Отправлено Герман , 25-Апр-23 10:21 
Плюсы для профессионалов

"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 27-Апр-23 03:32 
Си простой как два рубля, и нуб от профессионала отличается тем, что профессионал чаще статическим анализатором пользуется и вообще осторожнее работает с указателями,т.к. шишек набил. А Раст это попытка запилить язык в котором некорректную работу с памятью (такую, которую хакеры могут использовать через эксплоит) просто не выразить через синтаксис (тупо не скомпилируется). Но взамен чудовищное переусложнение практически на ровном месте. Borrow checker, лайфтаймы, внезапная фрустрация от того, что деревья и графы в расте описать можно, не используя unsafe, только очень неуклюже, ядрёными костылями.

"Выпуск языка программирования Rust 1.69"
Отправлено n00by , 27-Апр-23 06:44 
> внезапная фрустрация от того,
> что деревья и графы в расте описать можно, не используя unsafe,
> только очень неуклюже, ядрёными костылями.

Можно их реализовать на базе массива, заменив указатели индексами. Как например в главе 2.2 книжки А.Ахо, Дж.Хопкрофта, Дж.Ульмана сделано на Паскале. Фрустрация у меня от того, что почему-то не видел такой реализации.


"Выпуск языка программирования Rust 1.69"
Отправлено Аноним , 23-Апр-23 16:41 
Crablang тоже актуален
https://github.com/crablang/crab/blob/master/RELEASES.md