1.9, Rev (?), 13:12, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> В сборке компилятора rust для платформы Windows задействованы PGO-оптимизации (profile-guided optimization), позволившие поднять производительность компиляции кода на 10-20%.
А вот за это спасибо!
| |
1.12, Аноним (12), 13:17, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +32 +/– |
Хороший безопасный язык, переписал на него мою программу, и она стала безопасной, хотя до этого была небезопасной. Я думаю, это благодаря безопасной работе с памятью, с целью исключить небезопасность при работе с памятью. Благодаря этому достигается безопасность. А небезопасность там отлавливается на этапе компиляции, так что небезопасности во время выполнения нет, только безопасность остается. А небезопасность, выходит, исключается.
| |
|
2.29, Аноним (38), 13:34, 23/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Всё так в этом вся магия языка. Почти тоже самое как магия эпл.
| |
|
|
4.115, Аноним (115), 19:14, 23/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
нет, неонку из macbook уже давно вытащили. Говорят, слишком много энергии потребляет. Дорого...
| |
|
|
2.92, Аноним (94), 17:11, 23/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Молодец! Повторяй это 108 раз в позе лотоса и твоя программа будет безопасной.
| |
2.120, Аноним (120), 21:13, 23/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
Исключается только определенный класс ошибок, а не в целом "стало безопасно". Если бы ты не строил из себя шута - знал бы об этом.
| |
|
3.144, Аноним (144), 05:22, 24/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Если бы ты не строил из себя шута - знал бы об этом.
что за бред? где хоть какая-то логика?
| |
|
4.194, Прохожий (??), 00:16, 26/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Объясняю, ибо мало шансов, что сам поймёшь. Rust обеспечивает безопасность только при работе с памятью. В остальном он такой же, как и другие языки.
| |
|
5.254, aname (?), 15:55, 29/02/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Объясняю, ибо мало шансов, что сам поймёшь. Rust обеспечивает безопасность только при
> работе с памятью. В остальном он такой же, как и другие
> языки.
Но это не точно
| |
|
|
|
2.167, Ванёк (?), 02:02, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
В 1000 раз полезнее повторять на ночь молитву "Отче наш", сын мой!
| |
2.187, name (??), 20:45, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Блин, а я свою не смог переписать. Пока писал, мне стало так безопасно, что я подумал, а нафиг мне сдалось это программирование? Я ведь и код-то писал из-за опасности, а теперь безопасно и код писать не надо.
| |
2.200, burjui (ok), 13:14, 26/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ты если что и способен переписать, так это свои петросянские комменты.
| |
|
1.13, Аноним (-), 13:18, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
> независимой некоммерческой организации Rust Foundation
Первое предложение и уже наврали. Организация как минимум зависит от гугла и майкрософта.
| |
|
2.28, Аноним (28), 13:33, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Опеннет экспертов не попадешь, они за милю чувствуют ложь.
Если конечно смогут понять написанное
| |
|
3.170, мелкософта (?), 03:04, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Ну конечно эти организации ну никак нах них не влияют. А деньги у них с доната на патроне, ага.
| |
|
4.195, Аноним (28), 07:19, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Влияют, примерно на одну десятую каждая
Это собственно и называется независимая некоммерческая организация
| |
|
|
|
1.50, YetAnotherOnanym (ok), 13:50, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +7 +/– |
> Методы работы с памятью в Rust избавляют разработчикаНичего плохого не могу сказать про раст (по той простой причине, что не пишу на нём) но эта реклама утомляет. | |
|
2.137, Аноним (137), 00:50, 24/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Я таки почитал доку
ИМХО:
Быстрее сишки оно не будет, но почти
С версии 1.0 там много чего поменялось, уже вроде можно в прод
Реклама не реклама, действительно решает 99%
Есть косяк - на си можно всё, совсем всё; на ржавом тебе спецификацией языка рельсы делают и после си это напрягает. Вот прям бесит. Причём понимаешь, что вроде всё разумно, но бесит и всё)
Вседозволенность заменили на "осознонную необходимость"...
Сижу, учу
| |
|
3.145, eganru (?), 09:36, 24/09/2022 [^] [^^] [^^^] [ответить] | –2 +/– | i Быстрее сишки оно не будет, но почти i - смотрел disasm сгенерированного на... большой текст свёрнут, показать | |
|
4.180, Аноним (180), 14:55, 25/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> смотрел disasm сгенерированного на rust- хорошего мало. Уйма вызовов и копирований на ровном месте.
Пробовал смотреть с уровнем оптимизаций release вместо debug?
| |
|
|
|
1.55, Аноним (-), 13:59, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Почему разработчики Golang смогли добиться того, что бинарники занимают меньше места и при этом
> а ядра Linux c версии 2.6.32 до 3.2
поддерживают более старые ядра, чем сейчас раст? Неужели среди всех раст разумистов способных овладевать сложными концепциями овладевания не нашлось того кто бы сказал, что для системного вызова вместо линковки к libc достаточно написать несколько строчек на ассемблере?
| |
|
2.63, Анонн (?), 14:13, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Linux Kernel 2.6.32 LTS Reaches End of Life In February 2016
Некрофилы могут и сами поддержать.
Даже если бы там было пару строчек написать, зачем отвлекать хотя бы одного программиста на это?
А там не пару строчек добавить: нужно поддерживать все для тестирования этого хлама - сервера или виртуалки, гонять на них тесты, исправлять если бажина ядро-специфическия и т.д Кому это надо?
| |
|
3.78, Урри (ok), 14:54, 23/09/2022 [^] [^^] [^^^] [ответить]
| –2 +/– |
Хрустики отжигают:
"Даже если бы там было пару строчек написать, зачем отвлекать хотя бы одного программиста на это?"
В золотой фонд цитат опеннета.
--
Как будто там есть программисты :)
| |
|
4.81, Анонн (?), 15:01, 23/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Смешно слышать это от тебя.
Ты вроде как программист. По идее должен был слышать про приоритезацию задач, про целесообразность и тд.
> Как будто там есть программисты :)
Хаха. Получается в ядро линукса добавлять новый язык Торвальдс разрешил непрограммистам))
| |
|
5.123, Аноним (28), 21:48, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
В соседней новости местные эксперты обзывали Линуса всякими нехорошими словами. Торвальд для них не аргумент, ведь эксперты знают как на самом деле надо было делать программы, на чём писать и кто настоящий программист
| |
5.174, Урри (ok), 12:02, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Ты вроде как программист. По идее должен был слышать про приоритезацию задач,
Слышал. Поэтому и ржу с фразы про "пару строк" вкупе с "отвлекать программистов".
| |
|
6.197, Аноним (28), 07:41, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Что ещё ожидать от строящих из себя программистов ростоманив которые пишут фреймворк стоящий из себя язык программирования 🐽
| |
|
|
4.124, Аноним (28), 21:51, 23/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
В отличии от всех опеннетовских экспертов (кроме 3х человек), ТАМ действительно есть программисты
| |
|
|
6.156, Анонн (?), 19:56, 24/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Есть еще Ivan_83, где-то выкладывал свой github, что-то для потокового вещания.
| |
|
7.206, burjui (ok), 22:13, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Кстати, он в том треде доказывал, что Rust не нужен, и самодисциплина позволяет писать корректный сишный код, и у меня первый же запуск его потоковой вещалки printfнул мусор. Ну да ладно, все мы грешны. Он хотя бы код пишет, а не только фантазирует в комментариях :)
| |
|
|
|
|
3.205, An2 (?), 21:27, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> нужно поддерживать все для тестирования этого хлама - сервера или виртуалки, гонять на них тесты
Ну, конечно, когда компилятор жирно-переусложнённый да ещё и с зависимостью от llvm. Не то что go - минута - и компилятор вместе со стандартной библиотекой собрались, причём ещё за минуту - для другой платформы, и т.д.
| |
|
4.207, burjui (ok), 22:25, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Только вот Go - далеко не Rust по возможностям. Но быстрее всех компилится ассемблер. Только вот почему-то на нём писать сложный софт никто не хочет - а жаль, ведь тогда бы можно было собрать мир за две минуты. Главное же в программировании - скорость компиляции, а не поддерживаемость и надёжность работы кода.
| |
|
|
|
1.66, ryoken (ok), 14:19, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Чо у вас в голове новости творится? Так что вышло, 1.63 или 1.64? Определитесь плз с показаниями.
| |
|
2.74, Анонн (?), 14:42, 23/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
У них просто есть график ̶п̶о̶д̶ж̶и̶г̶а̶н̶и̶я̶ ̶п̶е̶р̶д̶а̶к̶о̶в̶ ̶н̶а̶ ̶о̶п̶е̶н̶ь̶к̶е̶ релизов - каждые шесть недель.
| |
|
|
2.201, burjui (ok), 13:17, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
А ты попроси разрабов ещё UB добавить и фичи подрезать — тогда догонит.
| |
|
1.85, Аноним (85), 15:35, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Просто очередная обёртка для работы с С-библиотеками. При чём не самая лучшая.
| |
|
|
3.90, Аноним (94), 17:05, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Смотря для чего. Для ядра, пожалуй, лучшим был бы V. А для юзеррспейса много чего придумали: D, Haxe, OCaml, недавний Carbon.
| |
|
|
5.100, Брат Анон (ok), 17:39, 23/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Это ты сейчас из пальца высосал. Освобождать память не пробовал? Или включать при сборке бинаря GC?
| |
|
4.102, Брат Анон (ok), 17:40, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Лучший для ядра Оберон. Максимум стандартной переносимости, минимум прямой работы с железом
| |
|
|
|
|
2.111, Онанистмус (?), 18:27, 23/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
В С++ так же:
awaitable<void> echo(tcp::socket socket)
{
try
{
char data[1024];
for (;;)
{
std::size_t n = co_await socket.async_read_some(boost::asio::buffer(data), use_awaitable);
co_await async_write(socket, boost::asio::buffer(data, n), use_awaitable);
}
}
catch (std::exception& e)
{
std::printf("echo Exception: %s\n", e.what());
}
}
| |
2.117, Анонн (?), 19:39, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Нормально. В коде ты можешь сокращать пути импорта (некий аналог using в c++)
use deeply::nested::function as my_function;
fn main() {
my_function();
}
| |
2.132, Аноним (28), 23:15, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Нет конечно. Тебе могут привести Си++ или Котлин с его доступом к свойствам через :: но в нормальных языках, таких как ANSI C, такого нет
| |
|
1.125, Аноним (-), 22:09, 23/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
os::unix::process::CommandExt::process_group
os::windows::fs::FileTypeExt::is_symlink_dir
os::windows::fs::FileTypeExt::is_symlink_file
Агаблин, вот вам и стдлибы для блага портабельного кода...
| |
|
2.126, Анонн (?), 22:25, 23/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну а как ты предлагаешь писать платформозависивый код?
Городить #ifdef __linux__ #elif _WIN32 везде? Или оформить это в виде отдельного модуля?
Что удобнее? Потому что платформозависимость никуда не денется.
| |
|
3.146, _kp (ok), 10:56, 24/09/2022 [^] [^^] [^^^] [ответить] | +/– | Если изначально предполагается писать под разные платформы, то очевидно что б не... большой текст свёрнут, показать | |
3.182, Аноним (-), 17:37, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Ну а как ты предлагаешь писать платформозависивый код?
> Городить #ifdef __linux__ #elif _WIN32 везде? Или оформить это в виде отдельного
> модуля?
> Что удобнее? Потому что платформозависимость никуда не денется.
И как на *nix сработает конструкция вида os::windows::fs::FileTypeExt::is_symlink_dir интересно, ежели без условной сборки то? Где оно имплементацию то возьмет?
| |
|
|
|
2.141, Аноним (137), 02:36, 24/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
Там в комплекте cargo
Контроль версий всего
И уже только добавляют, обратная совместимость
| |
2.143, Аноним (143), 04:27, 24/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
За последние годы он больше прирастал фичами, чем вот именно менялся. Лет пять назад да, иное дело, но не сейчас уже
| |
|
|
|
5.179, Аноним (-), 13:03, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Сколько анонимов, и ни один в чейнджлог не смотрел.
> https://github.com/rust-lang/rust/blob/master/RELEASES.md
>> impl Trait was accidentally accepted as the associated type value of return-position impl Trait, without fulfilling all the trait bounds of that associated type, as long as the hidden type satisfies said bounds. This has been fixed.
>> Add assertion that transmute_copy's U is not larger than T
>> A soundness bug in BTreeMap was fixed that allowed data it was borrowing to be dropped before the container.
Сам-то смотрел? А точно глазками?
| |
|
|
|
2.188, Аноним (188), 21:26, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Создатели языка хорошо заботятся обратной совместимости. Заявлется что после версии 1.0 можно писать код без проблем и это выполняется. То что у него частые обновления - так это же хорошо, фичи настаиваются в найтли и бета и потом стабилизируются. Процесс разработки выстроен отлично.
| |
|
1.154, А (??), 18:46, 24/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> упоминаются ограниченные ресурсы по продолжению сопровождения совместимости со старыми окружениями
А, ну тогда - не, не, не, не надо этого. Если на старте сил уже нет.
| |
1.158, Аноним (158), 21:21, 24/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
То есть драйвера на расте больше не будут работать с выходом новой версии ядра?
| |
|
2.177, Урри (ok), 12:18, 25/09/2022 [^] [^^] [^^^] [ответить]
| –1 +/– |
> То есть драйвера на расте больше не будут работать с выходом новой
> версии ядра?
Смотри шире - они перестанут собираться с выходом новой версии компилятора. Каждых полгода, приблизительно.
| |
|
3.192, eganru (?), 22:42, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
С помощью слотов можно сделать разные редакции, так что не самая большая проблема на самом деле.
В тугие годы у меня в системе стояло 4 версии питона, тк. софт использовал разные почему-то версии интерпретатора.
| |
|
|
|
2.161, Аноним (161), 21:59, 24/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Сишка гамно как и все языки со скобками. Ada, бейсик, паскал - лучшие.
| |
|
|
|
5.202, burjui (ok), 13:27, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Ничего математического там нет с точки зрения разработки, только основная идея. В Lisp'ах вообще ничего нет, даже вменяемого синтаксиса, поэтому всё делается на синей изоленте, т.е. макросах, и это и есть главный их недостаток.
| |
|
|
|
|
|
2.171, Аноним (164), 04:12, 25/09/2022 [^] [^^] [^^^] [ответить]
| +3 +/– |
На русте. Написать компилятор\интерпретатор - не самая сложная задача.
| |
|
3.172, Аноним (172), 04:14, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Написать компилятор\интерпретатор - не самая сложная задача.
Оно и понятно, почему растопроги - тормознутые и жрущие память.
| |
|
|
5.209, Аноним (-), 09:27, 27/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
> Пруфов конечно же не будет?
"Мы все так говорим, а значит это правда!"©
| |
|
|
3.203, burjui (ok), 13:30, 26/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Да вообще плёвое дело. Здесь так вообще рассадник экспертов по компиляторам, каждый по десятку написал в уме.
| |
|
4.232, leftpad.js (?), 21:26, 29/09/2022 [^] [^^] [^^^] [ответить]
| +2 +/– |
Ни в коем случае не пишите своё, а то вдруг случится непоправимое и вы действительно чему-то научитесь.
| |
|
|
|
1.181, bOOster (ok), 17:12, 25/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Подняли требования к ядру Linux.. Ну давайте уже, поднимайте до уровня last linux version + 1.
| |
|
2.183, Аноним (-), 17:56, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
https://www.opennet.me/opennews/art.shtml?num=44919
>> Релиз системной библиотеки Glibc 2.24
>> 05.08.2016 08:46
>> Для работы Glibc на архитектурах, отличных от x86 и x86_64 теперь требуется ядро Linux 3.2
...
> Подняли требования к ядру Linux.. Ну давайте уже, поднимайте до уровня last linux version + 1.
Уточни: ты очередной "совсем не паляшийся" вендузятник или просто закинулся Этодругином™®?
| |
|
3.190, Ням (??), 22:09, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
>язык системного программирования
>требует особую версию ведра linux
Мам, я сейчас буду писать свою ОС, только линукс три и два поставлю!
| |
|
4.193, Ананимус (?), 22:48, 25/09/2022 [^] [^^] [^^^] [ответить]
| +/– |
Лулз в том, что версию ведра на самом деле требует glibc, которую требует gcc из crosstool-ng.
| |
4.208, Аноним (-), 09:26, 27/09/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
>>> The minimum required versions for all -linux-gnu targets are now at least kernel 3.2
>>язык системного программирования
>>требует особую версию ведра linux
> Мам, я сейчас буду писать свою ОС, только линукс три и два поставлю!
Опеннетная Экспертиза, аз из!
| |
|
|
|
1.198, Аноним (-), 07:42, 26/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Типажи :) Только мне кажется что слишком уж перегруженная скрипта выходит, не лучше уж ли по старому со стекоподобным апи - шлеп шелп, и соседа алкоголика за стограм десятьтышстрок на луа или чемпопало еще нанять чем вот это вот все ?
| |
1.204, истина в последней инстанции (?), 16:52, 26/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> Повышены требования к окружению Linux в компиляторе, пакетном менеджере Cargo и стандартной библиотеке libstd - минимальные требования к Glibc
Ахахахаха, кучка неосиляторов. Ну никуда без тех людей которые действительно что-то умеют
| |
1.212, Аноним (213), 20:56, 29/09/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>После интеграции фронтэнда штатный инструментарий GCC сможет использоваться для компиляции программ на языке Rust без необходимости установки компилятора rustc, построенного с использованием наработок LLVM.
Угадайте, почему "может" не превратится в "будет", а потом заглохнет, как gcj.
| |
1.251, Аноним (251), 12:17, 01/10/2022 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Там выше кто-то запостил пример плохого нипанятного кода:
for (int ind = 0; ind<100; ind++)
{
if ind < 20 || ind % 4 == 0 {continue;}
if ind >= 70 {break;}
int i = ind * ind;
printf("%d %d \%i", ind, i);
}
Ловите рерайт:
for (int ind = 0; ind < 100; ind+=4)
{
if ((ind < 20) || (ind >= 70)) continue;
int i = ind * ind;
printf("%d %d \%i", ind, i);
}
Цепочки вызовов функций для быдла.
| |
|
2.252, nekto (?), 20:46, 01/10/2022 [^] [^^] [^^^] [ответить]
| +1 +/– |
for (int ind = 20; ind < 71; ind += 4) {
int i = ind * ind;
printf("%d %d \%i", ind, i);
}
| |
|
|