170 похожих чатов

Поведение должно полностью спецификацией описываться. зачем мне знать, какая хэшфункция

используется? подозреваю, что какая-то приемлемая. и с каждым релизом становящаяся всё лучше и лучше

12 ответов

13 просмотров

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

Daniel Podolsky
про функцию на собесах иногда спрашиваю я, и, по-м...

кококо бизнесу это не надо, бизнесу надо код)

Daniel Podolsky
про функцию на собесах иногда спрашиваю я, и, по-м...

А есть ли задачи, где знание внутреннего устройства map как-то поможет?

Daniel Podolsky
про функцию на собесах иногда спрашиваю я, и, по-м...

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

🏳️ Phil Kulin
я удовлетворился прочтением блога и статей. надо з...

не знаю 🙂 но там прям явлены блеск и нищета go. когда у generic-типа в коде присутствуют ad-hoc оптимизации под конкретные типы - это сильно.

Daniel Podolsky
не знаю 🙂 но там прям явлены блеск и нищета go. к...

ладно, ты прав. потому что у меня появился вопрос (любопытство), а без заглядывания я не пойму ответ.

а кто это делает сейчас?

c
а кто это делает сейчас?

Программист(в случае мап - авторы go).

Так. Хорошо. Давай заглянем в исходники map. В современных исходниках, как я понимаю, он выбирает между fast32, fast64, faststr (всё ассемблерные реализации) и построенным компилятором замыканием (там вообще везде вызывается t.hasher(..)) Возможно, в каком-то месте этот hasher() ничего не делает, но я не могу найти это место

🏳️ Phil Kulin
Так. Хорошо. Давай заглянем в исходники map. В со...

https://github.com/golang/go/blob/68ecdc2c70544c303aa923139a5f16caf107d955/src/cmd/compile/internal/reflectdata/alg.go#L78 это же?

🏳️ Phil Kulin
https://github.com/golang/go/blob/68ecdc2c70544c30...

Ладно. Хорошо. Поправьте меня. Golang в текущей реализации всегда делает хэширование ключа. Никакие целочисленные ключи он впрямую не использует, хотя и имеет специальные функции для 32-битных и 64-битных ключей

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта