Пытаемся понять, что хорошего в Расте

Только технические вопросы по ЯОС и MINOS. Терминология и прочее - в других форумах.
Ответить
Аватара пользователя
Лис [Вежливый]
Сообщения: 561
Зарегистрирован: 08.10.18 13:32

Re: Пытаемся понять, что хорошего в Расте

Сообщение Лис [Вежливый] » 22.07.22 06:11

И вообще, двусвязный список не рекомендуют использовать, потому что кеши плохо с ним работают:
https://doc.rust-lang.org/std/collectio ... dList.html
It is almost always better to use Vec or VecDeque because array-based containers are generally faster, more memory efficient, and make better use of CPU cache.
Ещё есть однонаправленная очередь:
https://www.educba.com/rust-queue/
«We can add any number of elements inside it, all the implementation is based on the vector data structure»

https://stackoverflow.com/questions/408 ... ns-in-rust
«it still maintains amortized O(1) push_back even when not reserving excess capacity ahead of time»

И для конкретно этого примера однонаправленной достаточно.

БудДен
Сообщения: 2839
Зарегистрирован: 07.10.18 14:01

Re: Пытаемся понять, что хорошего в Расте

Сообщение БудДен » 23.07.22 10:43

Пока не реализован весь набор операций, сложно судить, есть трудности или нет. Амортизированное O(1) - это О(1) в среднем. Однако если говорить о худшем времени, то это будет O(N). Это решение уже не годится и проигрывает списку, у которого настоящее О(1), т.е. и в среднем, и худшее время будет О(1).

Аватара пользователя
Лис [Вежливый]
Сообщения: 561
Зарегистрирован: 08.10.18 13:32

Re: Пытаемся понять, что хорошего в Расте

Сообщение Лис [Вежливый] » 23.07.22 12:20

Деньги в среднем будут зарабатывать программисты на Rust, а ты только в худшем случае, и то не гарантированно в N раз больше.

БудДен
Сообщения: 2839
Зарегистрирован: 07.10.18 14:01

Re: Пытаемся понять, что хорошего в Расте

Сообщение БудДен » 23.07.22 23:07

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

Аватара пользователя
Лис [Вежливый]
Сообщения: 561
Зарегистрирован: 08.10.18 13:32

Re: Пытаемся понять, что хорошего в Расте

Сообщение Лис [Вежливый] » 24.07.22 03:34

Пф. Не всё понял ты, а виноват почему-то я.

БудДен
Сообщения: 2839
Зарегистрирован: 07.10.18 14:01

Re: Пытаемся понять, что хорошего в Расте

Сообщение БудДен » 24.07.22 22:27

Я точно понял, что ответить на "амортизированность" тебе нечем. Удивительно, что прямо один в один с товарищем с ЛОРа по имени khrudel, который на 10 страницах всех оскороблял - ответить на эту проблему, которую ему человек 5 указали, ему оказалось нечем, но зато он щедро раздавал диагнозы налево и направо.

Аватара пользователя
Лис [Вежливый]
Сообщения: 561
Зарегистрирован: 08.10.18 13:32

Re: Пытаемся понять, что хорошего в Расте

Сообщение Лис [Вежливый] » 25.07.22 06:23

> Я точно понял, что ответить на "амортизированность" тебе нечем.

Верно. Но это проблема только в редких случаях. Для тебя это не ответ, а для рынка - ответ.

БудДен
Сообщения: 2839
Зарегистрирован: 07.10.18 14:01

Re: Пытаемся понять, что хорошего в Расте

Сообщение БудДен » 25.07.22 10:39

На основании чего ты говоришь о редкости таких случаев? Если взять рынок труда для программистов, то Раст на нём занимает, наверное, процента 3. Значит, для 3% рынка Раст подходит (если это не дань моде - смотреть нужно не по вложениям усилий, а по полученному результату. Например, Дельфи подходит для рынка, т.к. фирмы на нём живут десятилетями). Как насчёт остальных 97%? Какие значимые программы написаны на Расте без unsafe? Кстати, если заглянуть внутрь тех библиотек, которые ты начал применять в своём примере, то unsafe там тоже есть.

Но в общем можно не тратить время, мой вывод на данный момент, что модель управления памятью в Расте - плохая.

Ответить