Size: a a a

WebAssembly — русскоговорящее сообщество

2020 August 11

Б

Богдан in WebAssembly — русскоговорящее сообщество
MaxGraey
Удивительно, значит в AssemblyScript GC нового поколения) Так как используется ARC для всего кроме циклически связанных объектов
А как собираются циклически связанные объекты? Или вообще не собираются? (я тут подумал что детектить циклы тоже непростая задачка)
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Богдан
А как собираются циклически связанные объекты? Или вообще не собираются? (я тут подумал что детектить циклы тоже непростая задачка)
Детектируются в compile time в основном. Это кстати позволяет выкинуть полностью GC когда он не требуется и оставлять рантайм только для ARC
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

Б

Богдан in WebAssembly — русскоговорящее сообщество
MaxGraey
Детектируются в compile time в основном. Это кстати позволяет выкинуть полностью GC когда он не требуется и оставлять рантайм только для ARC
Интересно, ну вот выносить по-максимуму в compile time это самая правильная тема. Мне кажется сборщик мусора следующего поколения должен быть максимально интегрирован с языком и использовать всю информацию статического анализа кода - в каких местах создаются объекты, в каких скоупах этих объекты живут, в каких местах происходит запись ссылок и их скоупы. Вполне возможно за счет этого получится разрулить циклические зависимости и уменьшить расход памяти на подсчет ссылок если известны лайфтаймы объектов и их флоу по коду
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Богдан
Интересно, ну вот выносить по-максимуму в compile time это самая правильная тема. Мне кажется сборщик мусора следующего поколения должен быть максимально интегрирован с языком и использовать всю информацию статического анализа кода - в каких местах создаются объекты, в каких скоупах этих объекты живут, в каких местах происходит запись ссылок и их скоупы. Вполне возможно за счет этого получится разрулить циклические зависимости и уменьшить расход памяти на подсчет ссылок если известны лайфтаймы объектов и их флоу по коду
Ну так оно и есть. А как езе по-другому? Ну в Java, да там все оверинженерно, но они и хотят покрыть прямо вообще все кейсы.
источник

c

cevek in WebAssembly — русскоговорящее сообщество
Богдан
Интересно, ну вот выносить по-максимуму в compile time это самая правильная тема. Мне кажется сборщик мусора следующего поколения должен быть максимально интегрирован с языком и использовать всю информацию статического анализа кода - в каких местах создаются объекты, в каких скоупах этих объекты живут, в каких местах происходит запись ссылок и их скоупы. Вполне возможно за счет этого получится разрулить циклические зависимости и уменьшить расход памяти на подсчет ссылок если известны лайфтаймы объектов и их флоу по коду
там ведь еще проблема в том что эти скоупы тоже путешествуют по программе в виде колбеков
источник

c

cevek in WebAssembly — русскоговорящее сообщество
Богдан
Интересно, ну вот выносить по-максимуму в compile time это самая правильная тема. Мне кажется сборщик мусора следующего поколения должен быть максимально интегрирован с языком и использовать всю информацию статического анализа кода - в каких местах создаются объекты, в каких скоупах этих объекты живут, в каких местах происходит запись ссылок и их скоупы. Вполне возможно за счет этого получится разрулить циклические зависимости и уменьшить расход памяти на подсчет ссылок если известны лайфтаймы объектов и их флоу по коду
а память для арка можно уменьшить только при условии что значение держит только 1 владелец
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
> Вполне возможно за счет этого получится разрулить циклические зависимости и уменьшить расход памяти на подсчет ссылок если известны лайфтаймы объектов и их флоу по коду

Этим и занимается Escape analysis
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Просто не думайте, что ресечеры и разработчики тупые и за 30-40 лет разработок в области GC они там только и придумали что Mark & sweep GC =) Уже столько всего понапримдумывали, что вы только подумаете, а это уже до вас придумано и пару раз побывало в том же JVM, потом от этого отказались окончательно и используют совершенно иной подход до которого вам еще фантазировать и фантазировать)
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Это очень поверхносный перечень небольшой лишь части
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

c

cevek in WebAssembly — русскоговорящее сообщество
MaxGraey
Просто не думайте, что ресечеры и разработчики тупые и за 30-40 лет разработок в области GC они там только и придумали что Mark & sweep GC =) Уже столько всего понапримдумывали, что вы только подумаете, а это уже до вас придумано и пару раз побывало в том же JVM, потом от этого отказались окончательно и используют совершенно иной подход до которого вам еще фантазировать и фантазировать)
ну на самом деле все сильно зависит от возможностей самого языка и его вм, я думаю для js или java половина всех этих вариантов gc не подойдут by design
источник
2020 August 12

M

MaxGraey in WebAssembly — русскоговорящее сообщество
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Человек на котором делжиться WASI, Cranlift и wasmtime тоже уволен. Надеюсь его и других специалистов возьмет к себе Fastly
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
Жеесть, если они хотели развивать васм, то это достаточно не дальновидное решение. Мб он с начальником каким повздорил
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Mikhail Voronov
Жеесть, если они хотели развивать васм, то это достаточно не дальновидное решение. Мб он с начальником каким повздорил
Нет, такими специальистами так просто не расстаются, это скорее менеджера над ним поменяют
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Расстаются похоже с сами дорогими (по части зарплаты) специалистами
источник