Size: a a a

2021 February 18

Е

Евгений in pro.elixir
Lama Lover
Ну вот поэтому структуры и победили рекорды
Из-за полиморфизма
А в чем тут разница? Для полиморфизма надо читать поле __struct__, читай его из первого поля кортежа. Те же яйца только в профиль.
источник

AN

Alexey Novoselov in pro.elixir
Да на какой фиг переделывать структуры на кортежи, если 95% работы с ними это экто и 95% времени в рантайме это поход в базу и обратно? Какую проблему это может решить?
источник

LL

Lama Lover in pro.elixir
Евгений
А в чем тут разница? Для полиморфизма надо читать поле __struct__, читай его из первого поля кортежа. Те же яйца только в профиль.
Для полиморфизма по полям структуры
источник

Е

Евгений in pro.elixir
Lama Lover
А что не так с макросами-то?
Рекорды типа редкость, потому что с ними душно
Дык поэтому и редкость, что неудобно макросами.
источник

DF

Denis Fakhrtdinov in pro.elixir
У рекордов и мап принципиально разные области применения. Фред об этом замечательно написал в LYSE: https://learnyousomeerlang.com/maps#mexican-standoff
Почитайте, не поленитесь.
источник

LL

Lama Lover in pro.elixir
Евгений
Дык поэтому и редкость, что неудобно макросами.
Ты, мне кажется, путаешь причину и следствия
источник

Е

Евгений in pro.elixir
Lama Lover
Для полиморфизма по полям структуры
Для такого "полиморфизма" структуры не нужны, это просто мапа.
источник

DF

Denis Fakhrtdinov in pro.elixir
TL;DR: map — это замена дикту, но не рекорду.
источник

Е

Евгений in pro.elixir
Lama Lover
Ты, мне кажется, путаешь причину и следствия
Я так не считаю. Я переделал ноды дерева с мап на кортежи и получил ускорение раза в два.
источник

LL

Lama Lover in pro.elixir
Евгений
Я так не считаю. Я переделал ноды дерева с мап на кортежи и получил ускорение раза в два.
Я так не считаю. Я сделал поменял кортежи на мапы и писать код стало проще
источник

LL

Lama Lover in pro.elixir
Ну это разговор не о чём
источник

Е

Евгений in pro.elixir
Lama Lover
Я так не считаю. Я сделал поменял кортежи на мапы и писать код стало проще
Если бы рекорды были сделаны по-человечески, было бы также просто.
источник

LL

Lama Lover in pro.elixir
От рекордов отказались в мире Elixir, потому что структуры банально удобнее. Да, рекорды быстрые, но с ними куча проблем
источник

ML

Maksim Lapshin in pro.elixir
Lama Lover
Я так не считаю. Я сделал поменял кортежи на мапы и писать код стало проще
есть же и другие вводные.

Например, кому-то нужен код на месяц и потом всё равно это всё выбрасывается, а у нас есть задача сохранить читаемость кода через годы
источник

LL

Lama Lover in pro.elixir
Евгений
Если бы рекорды были сделаны по-человечески, было бы также просто.
Что может быть более человеческим чем тот макрос что есть сейчас?
источник

AP

Andrey Pavlov in pro.elixir
Евгений
Если бы рекорды были сделаны по-человечески, было бы также просто.
Видимо проблема в том что в эликсире нет Row polymorphism-а, но тут уж грешно жаловаться, т.к. он вообще мало где есть)
источник

Е

Евгений in pro.elixir
Lama Lover
Что может быть более человеческим чем тот макрос что есть сейчас?
Да хотябы доступ к полям через точку
источник

AP

Andrey Pavlov in pro.elixir
ну и весьма небогатая система типов эликсира не способствует
источник

LL

Lama Lover in pro.elixir
Maksim Lapshin
есть же и другие вводные.

Например, кому-то нужен код на месяц и потом всё равно это всё выбрасывается, а у нас есть задача сохранить читаемость кода через годы
Понятное дело. Я этот пример привёл не как контр-пример, а для того чтобы @pham_nuwen понял что каждый может тут рассказать случаи из своего личного опыта, но дискуссию это никак не продвинет
источник

LL

Lama Lover in pro.elixir
Евгений
Да хотябы доступ к полям через точку
Бред, потому что компилятор не знает какой тип рекорда у переменной (да и вообще рекорд ли там)
источник