сбывачество: platform.uno (смотреть про webassembly)
всего-то 5-6 лет прошло.
Чуваки с Flutter быстрее обернулись (3 года), история расписана тут: juick.com #продуктивность #пророк #programming
SannySanoff at Juick
#WWW #продуктивность #внезапно #идея Я вот щас придумал future web app platform. Без всякого гомняного CSS HTML и жабоскрипта, всяких gulp grunt uglify и 100 прочего унылого однодневного crap, а будет как старый добрый виток desktop apps, ну всякие там Swing, Windows Forms итп. Короче, DOM используется чисто как девайс для постскрипта. Есть шрифты, есть их метрики, известны размеры. Есть output device (document.body.clientWidth x height), расставляй себе буквы как пожелаешь. Линии там рисуй (через канвас получится). Поля ввода тоже расставляй, они без рамок и паддингов, рамки и паддинги рисуются как линии если чо. Всякие layout managers и вообще весь код - приходят в бровзер на webassembly и они работают быстрее чем встроенный в бровзер, т.к. специализация и никакой тебе backward compatibility 20 лет. Если сайт хочет, он вообще изобретает себе сам язык разметки, кладет в бровзеру в кеш webassembly килобайт 300 и с тех пор он сам себе HTML. А разработка ведется на каком-нибудь в натуре dart-подобном языке (который удобен тем, что весьма динамический, но аннотирован типами и нормально компилится в llvm и как следствие в вебасм) Кроме того, Дартиум (или прочий бровзер с поддержкой VM для норм языка разработки, отличного от javascript) становится не нужен (он уже и так помирает в случае дарта, но по своим причинам). Пишешь ты как прежде было в GWT - прямо в IDE на любимом язычке который нативно вертится в своей VM, а всякое отображение с евентами рисуется удаленно по TCP в бровзере, и никакого DOM описания не гоняется там по протоколу, боже упаси, исключительно "нарисуй строку там", "картинку сям (и вот так)", а тут жолтеньким подкрась. Так как HTML layout весь отсутствует, тяжелый DOM с вложенностью двадцать уровней - отсутствует, то анимации "вручную" должны норм летать, если что. Да, и здесь полностью становится не нужен GC на жабоскрипте, да. Хотя конечно DOM bridge будет что-то кушать, но немного. А потом вообще сделают бровзеры интерфейс между webassembly и экраном прямой (тк щас этого интерфейса нет почти ничего). Не канвас, потому что текст-ориентированные аппы все-таки (ну там копи-паст должен работать, например, а его в канвасе не задумано), а что-то минуя js/dom layer. Станет разработка под бровзер приятной как раньше. Запомните это псто!