сесть за штурвал
так вроде в as самый низкий порог входа
ниже чем у раста, да :)
что именно сложнее, чем TS? я не шарю
Есть только одно но, WebAssembly довольно нишевая технология сейчас, а Rust это далеко не только wasm
super strict, any ты не сделаешь
Есть отдельная библиотека variant. Но то такое. Any впринципе не нужен
В смысле нету?=) Уже как 2 года есть
Я бы сказал что тс это костыли с типами поверх жса, которые 1) кривые 2) отваливаются в рантайме А ас это язык со строгой типизацией
Но не нативный же, а поверх на своем рантайме?
Например, кмк студентов можно на примере ас учить языку даже.
Ну да. Wasm GC пока завезли в Wasm. Да и не факт что будет сильно быстро с ним, по недавним отчетам Алона пока есть проблемы
В современном разработке фронтенда GC не особо то и нужен. Вот как например работает реакт - сработал обработчик события который поменял что-то в состоянии и вызывали перерендер приложеня в процессе которого аллоцируется дерево объектов (virtual-dom) дальше оно сравнивается с предыдущим деревом объектов и выполняются точечные изменения в дом-дереве. Для такой аллокации объектов GC не нужен потому что эти объекты живут до следующего перерендера - для этого достаточно создать два фиксированных массива - в один аллоцируем новые объеты и сравниваем с предыдущим массивом ну и свапим при следующем рендере. Дальше есть состояние которое мы меняем и которое является долгоживущим (сохраняется между перерендерами). Тут на первый взгляд кажется что нужен GC но если подумать то это состояние больше напоминает базу даных - всегда есть явное событие/интеншн когда нужно удалить тот или иной объект - например в состоянии хранится список тодо-задач и дальше юзер кликнул на кнопку и нужно удалить какую-то задачу и списка. И зачастую код обработки этого события в реакте уже выполняет задачу GC - а именно берет и явно удаляет задачу из массива списка тодошек в состояния и я не представляют что мешает дальше поверх этого с помощью удобного хелпера добавить деаллокацию объектов если на него нет больше ссылок. То есть я вижу больше необходимость в аллокаторе-деаллокаторе и некой бд/орм-ке для объектов (которая будет заниматься подсчетом ссылок и удаленем внутренних объектов при удалении родительского а также разруливанем циклических сслыок) при разработке фронтенда а не в дженерик сборщике мусора (который будет заниматься сканированием ссылок от рут-сета оргомного дерева состояния)
js и web это не только react. Дальше даже не читал, сори
virtual-dom это устаревший ненужный костыль
И это тоже. Elm, svelte и Solid.js тому пример. Кстати все они компилируемые
Чтобы в Вашей схеме с двумя массивами не утекала память, нужен GC. Не говоря о том, что GC нужен самому браузеру чтобы таки собирать DOM-узлы.
сесть за штурвал дело не хитрое, а вот полететь
Так в жс же есть сборщик, с чего это он не нужен?
Обсуждают сегодня