Здравствуйте, Nuzhny, Вы писали:
N>Здравствуйте, gandjustas, Вы писали:
N>>>Почему одновременно с этим Мозилла может переписать свой браузер на своём языке, который при этом менее стабилен в плане стандартов? При это денег у последней намного меньше. G>>Мозилла это компания, которая не продает. Кроме того движок мозилы на том же C++ написан, а UI на своем языке.
N>На каком таком своём языке?
XUL или как он там называется
Здравствуйте, turbocode, Вы писали:
T>Здравствуйте, QrystaL, Вы писали:
QL>>Здравствуйте, turbocode, Вы писали: T>>>.NET Core разве не новый кандидат на звание супер Фреймворка? QL>>Нет.
T>Почему? С нуля ведь пишут, есть шанс что наконец то всё сделают как надо.
Да пишут с 0 и используют модульность прежде всего для .Net Native и более компактного набора библиотек для докеров для Ажуров
Но просто отказаться от старого написанного кода невозможно. Поэтому многие анахронизмы переходят из-за совместимости и в .Net Standard 2
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, Ночной Смотрящий, Вы писали:
N>>Еще раз — DOM контролирует тот же самый GC что и объекты JS. НС>Ты уверен в этом?
Да, смотри мой первый коммент про wasm. Да и как оно может по другому работать если есть перекрестные ссылки?
N>> Ты я надеюсь понимаешь что в .NET для WPF нет своего GC. НС>В дотнете нет отдельно рантайма, и отдельно внешнего нативного DOM.
А с чего ты собственно вообще взял, что в браузерах DOM какой-то "отдельный и внешний"? Имхо ты просто фантазируешь, как с рефкаунтингом.
НС>А если есть что то похожее — дотнетный GC структуры за пределами рантайма не контролирует.
Чем это WPF у тебя "не нативный"? Лайфтайм элементов контролируется рантайм, рендерят их плюсы. В чем отличие от браузера?
Здравствуйте, novitk, Вы писали:
N>А с чего ты собственно вообще взял, что в браузерах DOM какой-то "отдельный и внешний"? Имхо ты просто фантазируешь, как с рефкаунтингом.
Я тут хотел приспособить финализаторы для V8, для освобождения ресурсов связанных с JS объектом, который можно получить через хромиум. Но там их нет, и память может освобождаться полностью при закрытии страницы.
А так GC работают прекрасно и с миллионами мелких объектов
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, novitk, Вы писали:
N>И что? Чем это отличается от работы любой IDE при открытие файла, кроме того что парсинг в ide на порядок сложнее.
Возможно. Но это только одна вкладка, а если их сотни, т.е. сотни открытых проектов с файлами? Сколько это памяти отожрет для GC?
N>Отсюда и растут уши почему браузеры пишут на плюсах/растах, а вовсе не потому что там "DOM развесистый". Современный браузер это просто JS VM с "батерейками" для реализации веб стандартов.
Здравствуйте, novitk, Вы писали:
N>Да и как оно может по другому работать если есть перекрестные ссылки?
В дотнете же работает. Например, при помощи CCW/RCW, вполне себе совмещая GC и рефкаунтинг.
НС>>В дотнете нет отдельно рантайма, и отдельно внешнего нативного DOM. N>А с чего ты собственно вообще взял, что в браузерах DOM какой-то "отдельный и внешний"?
С того что V8 вполне работает отдельно от DOM сам по себе.
НС>>А если есть что то похожее — дотнетный GC структуры за пределами рантайма не контролирует. N>Чем это WPF у тебя "не нативный"? Лайфтайм элементов контролируется рантайм, рендерят их плюсы. В чем отличие от браузера?
S> Но просто отказаться от старого написанного кода невозможно. Поэтому многие анахронизмы переходят из-за совместимости и в .Net Standard 2
А зачем там совместимость? Для чего она там нужна?
НС>.NET Core, когда пытался быть сам по себе, был послан на. После чего вышел .NET Standard 2 и попытки сделать несовместимые хрени закончились.
Если поддерживать совместимость то выйдет тот же уродец что и .NET только размером поменьше.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>В дотнете же работает. Например, при помощи CCW/RCW, вполне себе совмещая GC и рефкаунтинг.
В RCW файналазеры и т.д., которые как ты понимаешь не от хороший жизни, а потому что надо скрестить ужа и ежа.
НС>С того что V8 вполне работает отдельно от DOM сам по себе.
И что дальше то? DOM это просто библиотека для UI в V8. Она доступна только из JS VM, как и WPM в отличие от COM-a. Если все отдельно в чем проблема сделать к ней интерфейс из wasm-a? A не могут, так как все интергировано.
НС>>>А если есть что то похожее — дотнетный GC структуры за пределами рантайма не контролирует. N>>Чем это WPF у тебя "не нативный"? Лайфтайм элементов контролируется рантайм, рендерят их плюсы. В чем отличие от браузера? НС>Вот там где плюсы рендерят, там никакого GC нет.
Так и в Хроме его в рендеринге нет, но при чем здесь DOM? Еще раз, все ровно как в WPF, который не доступен из натива. Как ты думаешь почему? Ответ: потому что сам DOM там мэнэджд.
Здравствуйте, turbocode, Вы писали:
НС>>.NET Core, когда пытался быть сам по себе, был послан на. После чего вышел .NET Standard 2 и попытки сделать несовместимые хрени закончились. T>Если поддерживать совместимость
Здравствуйте, turbocode, Вы писали:
S>> Но просто отказаться от старого написанного кода невозможно. Поэтому многие анахронизмы переходят из-за совместимости и в .Net Standard 2 T>А зачем там совместимость? Для чего она там нужна?
Для того чтобы твои чаянья не сбыдись и МС не забросит .NET FW.
Здравствуйте, novitk, Вы писали:
НС>>В дотнете же работает. Например, при помощи CCW/RCW, вполне себе совмещая GC и рефкаунтинг. N>В RCW файналазеры и т.д., которые как ты понимаешь не от хороший жизни, а потому что надо скрестить ужа и ежа.
Тем не менее дотнетный GC работает только внутри аппдоменов.
НС>>С того что V8 вполне работает отдельно от DOM сам по себе. N>И что дальше то? DOM это просто библиотека для UI в V8.
Нет, не просто. DOM это неотъемлемая часть браузера, существующая даже если никакого JS не используется вообще. Она нативная и оптимизирована под задачи браузера, а не под абстрактное выполнение произвольного кода.
N> Она доступна только из JS VM
Она доступна через стандартное API только из JS VM.
N>, но при чем здесь DOM? Еще раз, все ровно как в WPF, который не доступен из натива.
WPF устроен не так как браузер. Но я с удовольствием почитаю ссылки, где будет сказано что в Хроме DOM управляется GC из V8.
Здравствуйте, Serginio1, Вы писали:
S>Я тут хотел приспособить финализаторы для V8, для освобождения ресурсов связанных с JS объектом, который можно получить через хромиум. S>Но там их нет, и память может освобождаться полностью при закрытии страницы.
Конечно, например если на JSObject есть ссылки из DOM-a.
S> А так GC работают прекрасно и с миллионами мелких объектов
+1
Здравствуйте, RBujfEOHIY, Вы писали:
RBE>Ещё там говорят ниже, что, мол, на C# наделано куча приложений, которые приносят пользу и деньги. Можно подумать, эти приложения не могли быть написаны на C++, Qt, wxWidgets, ATL, MFC, WinAPI, и приносить пользу и деньги. И работали бы быстрее, и системные требования были бы ниже, и стабильность/надёжность тоже были бы на высоком уровне, и скорость разработки была бы не сильно ниже.
Вот тут ты не прав. Обезъяны написали бы кривое, падучее тормозное говно. Если бы вообще довели до релиза. А на дотнете у них даже что-то получается писать, т.к. им язык и рантайм жопу постоянно подтирают.
Здравствуйте, gandjustas, Вы писали:
N>>На каком таком своём языке? G>XUL или как он там называется
"Боже, как давно это было! Помнит только мутной реки вода." (Никольский)
С ним уже покончено. Он на Rust браузер переписывают. На язык с автоматическим управлением памяти. Вместо С++. И получается быстрее и производительней. Ну не чудеса ли?