Size: a a a

Язык программирования Julia / Julia programming language

2020 September 23

A

Alexandr in Язык программирования Julia / Julia programming language
А с хранением в одном словаре все равно нужно самому следить за синхроннстью прямых и обратных ключей, так что выгода по сравнению с 2мя словарями вообще не понятна
источник

A

Alexandr in Язык программирования Julia / Julia programming language
Можно еще извратиться и сделать чуть посложнее, но более обще, чтобы можно было трех и больше направленный словарь делать 🙂 Хранить сами данные в виде списка кортежей, а рядом держать словари по нужным ключам с указателями на кортежи. Т.е. по сути сделать аналог индексов в БД
источник

KT

Kirill Tsaregorodtse... in Язык программирования Julia / Julia programming language
по-моему, в какой-то момент проще взять dataframes )
источник

A

Alexandr in Язык программирования Julia / Julia programming language
В DataFrames же вроде нет индексации в этом смысле. Там lookup быстрый это да, но если нужны точечные запросы (в смысле получить одну запись по значению ключа) как в словарь, то это явно не вариант.
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
О! Спасибо кстати за идею 😊
А то у меня в немного другой задаче был сложный ключ, я делал словарь словарей.

Кортеж вроде пошустрее должен быть.
источник

A

Alexandr in Язык программирования Julia / Julia programming language
Да не за что. Большинство классических БД так построено - есть длинный список строк таблицы в том или ином виде где-то на диске более-менее отсортированный  по первичному ключу. А вторичные ключи лежат отдельно либо как хеш-мапы, либо (чаще всего) как деревья.
источник

ЕП

Евгений Погребняк... in Язык программирования Julia / Julia programming language
Alexandr
А с хранением в одном словаре все равно нужно самому следить за синхроннстью прямых и обратных ключей, так что выгода по сравнению с 2мя словарями вообще не понятна
За прямым ключом вроде не надо следить - это же и есть сам словарь?
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Ну, имеется в виду, что вставку/удаление всё равно надо будет вручную доопределять.
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Никто же не хочет всю машинерию в верхнеуровневом апи каждый раз писать.

Хочется, чтобы было так
d = BiDict{String, String}()
d["hello"] = "world"

а обратная пара прописывалась автоматически
источник

KH

Katie Hyatt in Язык программирования Julia / Julia programming language
https://twitter.com/julialanguage/status/1308436062688153604?s=21

Если кто-нибудь хочет участвовать. Может будет получить эту красивую футболку
источник

KH

Katie Hyatt in Язык программирования Julia / Julia programming language
источник
2020 September 24

VG

Viktor G. in Язык программирования Julia / Julia programming language
Странное приведение типа:
julia> Int64(-2) + UInt64(0x1)
0xffffffffffffffff

julia> Int32(-2) + UInt32(0x1)
0xffffffff

julia> Int16(-2) + UInt16(0x1)
0xffff

julia> Int8(-2) + UInt8(0x1)
0xff

julia> Int64(-2) + UInt32(0x1)
-1

julia> Int32(-2) + UInt16(0x1)
-1

julia> Int16(-2) + UInt8(0x1)
-1
источник

Д

Дмитрий in Язык программирования Julia / Julia programming language
Как я понимаю в этом примере, Джулия выбирает такой тип данных результата, чтобы он желательно включал в себя оба типа данных суммы.
А есть общее правило или алгоритм выбора типа данных результата?
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
смотрите в сторону promote_type:
julia> promote_type(Int, UInt)
UInt64

julia> promote_type(Int, UInt32)
Int64
источник

Д

Дмитрий in Язык программирования Julia / Julia programming language
Спасибо, пойду поковыраюсь
источник
2020 September 25

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
А, ну кстати да, логично же получается.
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
UInt32 - 4 байта, Int - 8
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Общий тип помещается в 8 байтах
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Правда не очень понятно, что такое UInt
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Хм, нет, все наверное сложнее, просто размером не объясняется
источник