Size: a a a

Elm Lang сообщество разработчиков

2020 November 11

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Denis Krivosheev
По поводу массивов в js ... в хроме например массивы это очень нетривиальный объект... до тех пор пока мы складываем элементы последовательно - это ArrayList, если мы делаем разряженный массив, то на каком-то этапе (при достижении достаточной степени разрежённости) - он превращается в хэш мэпу
не
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
cat test.js

const data = [1, 2];
data.push(771155);
console.log([...data, 7711556]);

node --print-bytecode test.js
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Расшифруй коли понимаешь
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Одна и та же операция насколько я вижу используется
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Denis Krivosheev
Расшифруй коли понимаешь
Я прям не шарю, но сравнивая какие-то куски кода можно сказать, что примерно происходит 😄
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Сейчас ради интереса смотрю что это все значит, но StaInArrayLiteral в конце это специально под DestructuringAssignment сделано
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Там ещё момент не факт что байт код отображает то что происходит в нативном коде...
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Но то что я рассказал - это я когда-то видел презентацию одного из гугловых разработчиков конкретно v8
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Но это было давно
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Denis Krivosheev
Там ещё момент не факт что байт код отображает то что происходит в нативном коде...
Я понимаю, концы обрываются на
https://github.com/v8/v8/blob/4b9b23521e6fd42373ebbcb20ebe03bf445494f9/src/interpreter/interpreter-generator.cc#L664
там дальше codegen для нативного кода. Бросаю поиски, в другой раз может
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
На массив вызывается
var_result.Bind(CallBuiltin(Builtins::kStoreInArrayLiteralIC, context, array,
                             index, value, smi_slot, feedback_vector));

и этого кода нет в репозитории, он где-то при сборке всплывает
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Видимо каждый массив отправляется в гугл на анализ и встраивание рекламы 😂
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
😂 огонь шутка)
источник

YP

Yauhen Pyl in Elm Lang сообщество разработчиков
все умные, но фиг знает как там работает внутри
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Yauhen Pyl
все умные, но фиг знает как там работает внутри
v8 собирается сложнее чем ./configure && make 😔
источник
2020 November 17

G

Gleb in Elm Lang сообщество разработчиков
Вы знаете какой нибудь хороший туториал или статью, о том как написать Spa на elm
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
На элм ничего другого и не написать. А чем официальный туториал не нравится?
источник

SO

Sash Osh in Elm Lang сообщество разработчиков
Gleb
Вы знаете какой нибудь хороший туториал или статью, о том как написать Spa на elm
источник

G

Gleb in Elm Lang сообщество разработчиков
Denis Krivosheev
На элм ничего другого и не написать. А чем официальный туториал не нравится?
Просто больше материалов хочется
источник