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

Внезапно вопрос. Наверняка кто-то занимается перекладыванием байтиков из рекордов в

мапы и обратно? Накидайте своих методов — мне для бенча надо. В особенности интересует зачистка от undefined значений

11 ответов

35 просмотров

Главное – задавать как можно больше ключей для мапки на момент её создания. Это оптимизирует key tuple для маленьких мапок

Sergei- Автор вопроса
Lama Lover
Главное – задавать как можно больше ключей для мап...

Да, это замечательно работает, когда не надо фильтровать мапку по значениям

Метод перекладывания — foldl по record_info(fields, R)

https://www.erlang.org/eeps/eep-0058

Sergei- Автор вопроса
Dmitry Frolov
https://www.erlang.org/eeps/eep-0058

красиво, но медленно + непереносимо

Sergei- Автор вопроса
Evgeny M.
а если через element(i, Rec)?

не уверен, что правильно понимаю. конструкция V#record_name.field_name скомпилируется в тот же get_tuple_element

Sergei- Автор вопроса
Evgeny M.
а если через element(i, Rec)?

тут literal #{ K => V || {K, I} <- [{a, #bench_rec.a}, {b, #bench_rec.b}, {c, #bench_rec.c}], V <- [element(I, Rec)], V /= undefined }. да, чуть быстрее, но незначительно

Sergei
не уверен, что правильно понимаю. конструкция V#re...

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

Sergei- Автор вопроса
Sergei- Автор вопроса
Danil Zagoskin
Метод перекладывания — foldl по record_info(fields...

почему-то чуть быстрее, чем map comprehension

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта