LINUX.ORG.RU

rust vs. c++: hash & allocators

 , , ,


1

8

По сравнению с C++, в Rust правильно сделано хеширование. Этот пропозал http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3980.html, как я понял, не попадает в 17-й стандарт.

А вот аллокаторов в Rust вообще нет. Т.е. есть, один глобальный, для всего. А так, чтобы для одного std::vec использовать один аллокатор, а для другого — другой — хрен. Конечно, аллокаторы должны быть, но сделанные с умом, а не как в C++.

★★★

Последнее исправление: utf8nowhere (всего исправлений: 2)

Ну сделай свой vec с аллокатором, кто тебе мешает? Или возьми одну из готовых реализаций. А если их нет, значит никому оно не нужно.

Legioner ★★★★★
()

Продолжайте наблюдать и докладывайте.

Pavval ★★★★★
()

но ты же вырастешь и запилишь свой язык, с аллокаторами и женщинами?

trashymichael ★★★
()

толсто.

anonymous
()
Ответ на: комментарий от annulen

Ты явно не понял смысла этого пропозала.

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от Legioner

А если их нет, значит никому оно не нужно.

Плохой аргумент. В C++ тоже много чего нет (или есть, но не так, как надо), но многим нужно. Только в 17-м стандарте запилят polymorphic memory resource — нечто отдалённо напоминающее те аллокаторы, какими их все хотят видеть уже 20 с лишним лет.

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от quantum-troll

Это хорошо, что есть такой RFC. Просто удивляет, почему в стандартной библиотеке языка, нацеленного на производительность, не было такого с самого начала.

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от utf8nowhere

Плохой аргумент. В C++ тоже много чего нет (или есть, но не так, как надо), но многим нужно.

Например? Естественно речь о том, что можно реализовать в рамках языка.

Только в 17-м стандарте запилят polymorphic memory resource — нечто отдалённо напоминающее те аллокаторы, какими их все хотят видеть уже 20 с лишним лет.

Что это и что тебе мешает их запилить прямо сейчас?

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

Например? Естественно речь о том, что можно реализовать в рамках языка.

Не у всех есть ресурсы запиливать свою STL, как это сделали в Electronic Arts.

Что это

Что тебе мешает погуглить прямо сейчас?

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от utf8nowhere

Не у всех есть ресурсы запиливать свою STL, как это сделали в Electronic Arts.

Ну вот и выходит, что никому не нужно. Если бы было нужно, ресурсы бы нашлись.

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

Всё в жизни кажется простым, когда тебе 15 лет, правда?

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от utf8nowhere

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

Видимо, потому, что авторы раста в курсе про итеративную модель разработки ПО. Удивительно, да?

Esper
()
Ответ на: комментарий от utf8nowhere

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

Да чему тут удивляться - ресурсы-то не бесконечные.

DarkEld3r ★★★★★
()
Ответ на: комментарий от utf8nowhere

Теперь надо итеративно выкинуть половину std

Коллекции - это не половина std. Да и что ты там собрался выкидывать, непонятно. Там только добавляется пара конструкторов и меняются заголовки impl'ов. Ну, и, собственно, код аллокации.

Удивительно, да?

Твой мирок удивительный, да.

Esper
()
Ответ на: комментарий от utf8nowhere

Сразу не могли нормально зделоть?

Это философский вопрос из разряда почему программисты пишут говнокод или откуда берётся легаси.

true_admin ★★★★★
()
Ответ на: комментарий от utf8nowhere

Сразу не могли нормально зделоть?

Сразу - это как? Вырвать волосок из бороды, сказать «Библиотекус запилянус!», и готово? Или пять лет сидеть и обсуждать каждый нюанс дизайна коллекций, не написав ни строчки кода?

Если ты хотел спросить «Почему они отложили это на post-1.0?», то ответ - «Потому что это далеко не всем надо, так что это не приоритетная задача».

Esper
()
Ответ на: комментарий от Pavval

Судя по нику, ты Эддичка.

А теперь, болезный, зайди в профиль и посмотри на URL.

После чего сдай детектор в ремонт, если гарантия ещё не закончилась.

utf8nowhere ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.