Информация об изменениях

Сообщение Re[44]: MS забило на дотнет. Питону - да, сишарпу - нет? от 07.08.2021 13:22

Изменено 07.08.2021 13:55 Serginio1

Re[44]: MS забило на дотнет. Питону - да, сишарпу - нет?
Здравствуйте, vdimas, Вы писали:

V>Здравствуйте, Serginio1, Вы писали:


S>>JS на первом месте, затем Питон, Java и C#, PHP и TS!!!


V>А складываешь проценты и получаешь сотни процентов вместо одной сотни.

V>Фуфел это.

V>Опрашивать необходимо было по основному языку или просить присваивать веса, если языков более одного.

V>Потому что который пишет в основном на TS, он укажет так же и JS.
Ну ты напиши это в стэковерфлоу. Что для тебя не фуфел?
Даже из этого опроса не видно дарта.
V>Я тоже, помимо C++, укажу еще несколько языков, в ответе на вопрос "какие языки используете", в т.ч. JS и Питон.
V>Но статистика будет фуфел, бо скриптовые языки повсеместно используются в кач-ве языков для написания вспомогательных утилит.
Я например не использую. Значит TS и дарт ты не используешь?

V>>>Смотрю как много Rust и TS вызывает вопросов на SO. ))

S>>TS это замена самому популярному языку. Вопросов много потому что активно развивается и куча нововведений!

V>Потому что ты не посмотрел на возрастную диаграмму — основному кол-ву участвующих в опросе 25-29 лет.

V>Собирающим статистику стоило бы присваивать веса и согласно возрастному распределению, чтобы выровнять статистику.
V>Иначе получается фуфел.
Ну для тебя все фуфел. Мы то говорили про дарт и ТС. ТС прет, дарта не видно!

V>>>Простое ветвление прямо в коде намного органичней смотрится, чем ветвление в JS, где или согласно условиям рендерят текст HTML, или ручками напихивают DOM, или переключают стили/классы видимые/невидимый.

S>> То же самое можно делать и напрямую создание компонентов в коде.

V>В коде выглядит еще более убого.

Нет. То же само, что и в дарте. Но декларативно в XML или Json удобнее

S>>Кстати на Xamarin сначала вообще не было редактора и все описывалось в коде аналогично Dart,


V>В Dart выглядит неплохо, в отличие от Xamarin.

V>Язык специально затачивали под этот сценарий, чтобы описания GUI на Dart не уступало декларативному, но в итоге оно превосходит.
Только почему то его активно не используют
V>У тебя же интернет работает, чувство прекрасного должно быть — посмотри сам примеры описания GUI на Dart, что ты к этому XAML прицепился?
V>Твоя производительность на XAML заведомо будет в разы ниже, чем производительность на Dart (при сравнимом опыте в двух технологиях), а только это и имеет смысл, остальное бабушкины сказки.
Потому, что декларативно многие вещи проще описываются. Ссылки плиз. На Xaml программируют куча народа.
Кстати про популярность фреймворков

Твой хваленый флутер совсем на немного опережает Xamarin

S>>но декларативно описывать проще


V>Если низлежащий язык не предназначен для декларативного описания.

V>Кстате, в С++ добавили именованные параметры, т.е. я ожидаю появления либ с описанием GUI в Dart-стиле.
В C# давно именованные параметры, а в котлине еще проще

S>>Но при этом альтернативы, которая вытеснила HTML то и нет.


V>Пока в стандарте W3C будет только JS — и не будет.

V>Но это не означает, что JS клёвый.
Нет, это означает, что дарт еще долго не будет востребован

S>>Вот TS активно вытесняет JS, но он и компилируется в JS.


V>Одна поправочка — TS активно вытесняет JS где угодно, кроме фронтенда.

V>Во фронтенде весьма неактивно.
V>Я бы сказал даже — никак не вытесняет.
Ну я не знаю почему всякие там электроны не используют TS, но TS только за счет интеллисенса выгодней, не говоря уже об проверки ошибок.

V>>>С Unity ты не разбирался, посему твоё упорство выглядело странным.

V>>>Особенно когда ты не мог поверить, что в нейтивном релизе есть GC, но нет "среды".
S>>Угу чего мне не верить если в .Net Native есть GC но нет среды?

V>Это ты сам придумал.

Ссылку сестра, на то, что используется il и Jit в рантайме

S>>Я говорил про отладку в среде и то, что для андроида она опциональна.


V>Ты много чего говорил, но цель этого мне плохо понятна.

V>Особенно твоя упоротость в плане "среда", "не среда".
V>Да пофик.
V>Назови хоть абракадаброй, главное ориентироваться, что эта абракадабра может, а чего нет.
Jit это среда!!

S>>И присутствует моно. Ты же отрицал моно и среду. Типа все в С++


V>Потому что возьми Unity, возьми какой-нить пример, собери релиз, убедись — никакого Mono, никакой среды, промежуточные файлы компиляции на плюсах.

V>Какие проблемы?

Угу тебе привели пример, что полно Il кода. Зачем он нужен без JIT?

V>>>Точный GC не может работать без метаинформации, поэтому, там и метаинформации овердофига.

V>>>Можно сравнивать у разных объектов результат вызова GetType(), работает is и as, работает проверка на отношение base/derived и т.д. и т.п.
S>>Ну во первых ты говоришь про CoreRT

V>Не я, я ссылки привёл, где CoreRT называли "средой".


Да называют средой из-за сборки мусора. Но ты относительно юнити называл это чистым нативом.
Среда это JIT

S>>который возможно и будет использовать JIT компилятор в рантайме.


V>Сам придумал?

V>Или почитал "новость" из 2016-го?


S>>Но во всех твоих ссылках нет ссылок на JIT в рантайме!!!


V>Потому что AOT антагонист JIT.

Мы говорим про среду. А среда это JIT. При чем тут AOT. NGEN это тоже AOT.

S>>is и as прекрасно работают в Delphi ибо есть информация в VMT по отрицательным смещениям.


V>Но нет остальной метаинформации.

V>А в CoreRT ты можешь взять список мемберов ссылочного типа в рантайм и взять значения этих мемберов.
Для этого ты должен отдельно прописать какие типы ты будешь ипользовать. Можно указать все типы. Но информация о тип это не IL!

V>В плюсах тоже есть кое-какая RTTI, но её можно отключить, если не используется.

Ииии. Значит ты не можешь использовать is/
Как бы там ни было но для GC нужна для типа информация о размере выделяемой памяти и список смещений поле ссылочного типа. Но это не много.

V>>>А насчёт докомпиляции — по ссылке для особо понятливых несколько раз повторяется, что это AOT-технология, но при этом используется тот же самый RuiJIT.

S>>Опять же речь про CoreRT. Опять проблема не AOT, а в рантайме.

V>Проблема в твоём вольном жонглировании терминами.

Неее мы говорим о среде. А среда это JIT!!!

S>>Для .Net Native нет JIT компиляции в рантайме, а значит и нет среды в нормальном понимантт.


V>А откуда ты взял своё "нормальное понимание"? ))

Пото му что ты говоря о IL2CPP говорил, что там нет нета, хотя и есть GC, при этом сборка идес по графу достижимых объектов!
Ссылки я тебе давал.

S>>Под понятием среда в .Net Native это GC, без JIT компиляции в рантайме!


V>И что смущает?

А то, что я тебе про это в самом начале говорил относительно IL2CPP. Но ты упорно называл это полным нативом причем с компиляцией C#.
Я сразу тебе написал и дал ссылку, что среда в .Net Native это GC, но ты упорно не считал это средой. А тут вдруг согласился

V>>>А тебя послушаешь, так даже в случае обычного дотнета, после того как JIT перевёл в нейтив весь наличествующий байткод, сразу "среда" перестаёт быть "средой".

V>>>Ведь происходящее далее не сильно будет отличаться от происходящего в .Net Native UWP.
S>> Нет я как раз приводил ссылку на различие NGEN и .Net Native! передергиваешь
S>>https://stackoverflow.com/questions/68114109/using-system-reflection-emit-in-uwp-with-net-native-tool-chain

V>Да нет, я сказал именно то, что сказал.

V>И мне плевать, что кто-то в рантайм что-то там генерит.
V>Это отдельная задача, требущая наличия соотв. средств.

Да что там в рантайме то можно городить без Il кода??
Только сборка мусора, ну и аналог RTTI.

V>Вот зачем ты мне дал ссылку на какого-то идиота, который хочет JIT и не хочет JIT одновременно? ))

Я тебе привел ссылку на то почему нет JIT в .Net Native ибо просто нет Il кода который нужно компилировать!

V>Даже если всё остальное приложение требует именно сурового нейтивного исполнения, этому дятлу не пришло в голову взять какую-нить готовую скриптовую встраиваемую технологию, типа Lua или Питон:

V>https://docs.python.org/3/extending/embedding.html


S>>Образы IL Fallback — NGEN содержат как машинный код, так и MSIL для сборки (среди других структур данных). Если во время выполнения происходит что-то, что заставляет CLR нуждаться в машинном коде, который он не может найти в образе NGEN, он может вернуться к JITing.


V>Вооот!

V>Наконец-то ты показал суть своего непонимания. ))

V>NGEN предназначен для библиотек, ему обязательно нужен IL для возможности оптимизации кода, использующего библиотеку.

V>В отличие от NGEN, .Net Native запекает код проекта в один самодостаточный образ.


S>>В текущем предварительном просмотре разработчика .NET Native в нативном образе присутствует только нативный код. Это означает, что если код отсутствует в изображении, он никогда не будет выполняться во время выполнения.


V>И это прекрасно! ))



S>> Что по твоему должен компилировать JIT если не IL кода?

S>>>>Подтверди свои утверждения ссылками. Опять голословный треп.
V>>>А в сад тебе не прогуляться, к остальным двоечникам? ))
S>> Вот за что мне нравится с тобой общаться! Подымаешь настроение.

V>Нет, не поэтому тебе нравится со мной общаться.

V>А потому что у меня бесконечное терпение и так жизненно-необходимая тебе дотошность со стороны оппонента.
V>Остальные быстро от тебя отваливаются. ))
Ну в итоге ты наконец то согласился что среда в .Net Native это GC без JIT.
Так в итоге чем Юнити с IL2CPP отличается от .Net Native??
То, что у них допотопный GC это проблемы Unity. Но суть то там одна сборка идет по графу достижимых объектов, пусть и без уплотнения.
И приводи ссылки на свои утверждения. Поверь я рад ошибиться, но главное понять в чем я ошибаюсь
Re[44]: MS забило на дотнет. Питону - да, сишарпу - нет?
Здравствуйте, vdimas, Вы писали:

V>Здравствуйте, Serginio1, Вы писали:


S>>JS на первом месте, затем Питон, Java и C#, PHP и TS!!!


V>А складываешь проценты и получаешь сотни процентов вместо одной сотни.

V>Фуфел это.

V>Опрашивать необходимо было по основному языку или просить присваивать веса, если языков более одного.

V>Потому что который пишет в основном на TS, он укажет так же и JS.
Ну ты напиши это в стэковерфлоу. Что для тебя не фуфел?
Даже из этого опроса не видно дарта.
V>Я тоже, помимо C++, укажу еще несколько языков, в ответе на вопрос "какие языки используете", в т.ч. JS и Питон.
V>Но статистика будет фуфел, бо скриптовые языки повсеместно используются в кач-ве языков для написания вспомогательных утилит.
Я например не использую. Значит TS и дарт ты не используешь?

V>>>Смотрю как много Rust и TS вызывает вопросов на SO. ))

S>>TS это замена самому популярному языку. Вопросов много потому что активно развивается и куча нововведений!

V>Потому что ты не посмотрел на возрастную диаграмму — основному кол-ву участвующих в опросе 25-29 лет.

V>Собирающим статистику стоило бы присваивать веса и согласно возрастному распределению, чтобы выровнять статистику.
V>Иначе получается фуфел.
Ну для тебя все фуфел. Мы то говорили про дарт и ТС. ТС прет, дарта не видно!

V>>>Простое ветвление прямо в коде намного органичней смотрится, чем ветвление в JS, где или согласно условиям рендерят текст HTML, или ручками напихивают DOM, или переключают стили/классы видимые/невидимый.

S>> То же самое можно делать и напрямую создание компонентов в коде.

V>В коде выглядит еще более убого.

Нет. То же само, что и в дарте. Но декларативно в XML или Json удобнее

S>>Кстати на Xamarin сначала вообще не было редактора и все описывалось в коде аналогично Dart,


V>В Dart выглядит неплохо, в отличие от Xamarin.

V>Язык специально затачивали под этот сценарий, чтобы описания GUI на Dart не уступало декларативному, но в итоге оно превосходит.
Только почему то его активно не используют
V>У тебя же интернет работает, чувство прекрасного должно быть — посмотри сам примеры описания GUI на Dart, что ты к этому XAML прицепился?
V>Твоя производительность на XAML заведомо будет в разы ниже, чем производительность на Dart (при сравнимом опыте в двух технологиях), а только это и имеет смысл, остальное бабушкины сказки.
Потому, что декларативно многие вещи проще описываются. Ссылки плиз. На Xaml программируют куча народа.
Кстати про популярность фреймворков

Твой хваленый флутер совсем на немного опережает Xamarin

S>>но декларативно описывать проще


V>Если низлежащий язык не предназначен для декларативного описания.

V>Кстате, в С++ добавили именованные параметры, т.е. я ожидаю появления либ с описанием GUI в Dart-стиле.
В C# давно именованные параметры, а в котлине еще проще

S>>Но при этом альтернативы, которая вытеснила HTML то и нет.


V>Пока в стандарте W3C будет только JS — и не будет.

V>Но это не означает, что JS клёвый.
Нет, это означает, что дарт еще долго не будет востребован

S>>Вот TS активно вытесняет JS, но он и компилируется в JS.


V>Одна поправочка — TS активно вытесняет JS где угодно, кроме фронтенда.

V>Во фронтенде весьма неактивно.
V>Я бы сказал даже — никак не вытесняет.
Ну я не знаю почему всякие там электроны не используют TS, но TS только за счет интеллисенса выгодней, не говоря уже об проверки ошибок.

V>>>С Unity ты не разбирался, посему твоё упорство выглядело странным.

V>>>Особенно когда ты не мог поверить, что в нейтивном релизе есть GC, но нет "среды".
S>>Угу чего мне не верить если в .Net Native есть GC но нет среды?

V>Это ты сам придумал.

Ссылку сестра, на то, что используется il и Jit в рантайме

S>>Я говорил про отладку в среде и то, что для андроида она опциональна.


V>Ты много чего говорил, но цель этого мне плохо понятна.

V>Особенно твоя упоротость в плане "среда", "не среда".
V>Да пофик.
V>Назови хоть абракадаброй, главное ориентироваться, что эта абракадабра может, а чего нет.

Возьмем твое утверждение

С Unity ты не разбирался, посему твоё упорство выглядело странным.
Особенно когда ты не мог поверить, что в нейтивном релизе есть GC, но нет "среды".


Jit это среда!!
Но когда я говорю, про .Net Native, что там только GC, ты утверждаешь, что там есть среда.
S>>И присутствует моно. Ты же отрицал моно и среду. Типа все в С++

V>Потому что возьми Unity, возьми какой-нить пример, собери релиз, убедись — никакого Mono, никакой среды, промежуточные файлы компиляции на плюсах.

V>Какие проблемы?

Угу тебе привели пример, что полно Il кода. Зачем он нужен без JIT?
И кто по твоему джитит код?

V>>>Точный GC не может работать без метаинформации, поэтому, там и метаинформации овердофига.

V>>>Можно сравнивать у разных объектов результат вызова GetType(), работает is и as, работает проверка на отношение base/derived и т.д. и т.п.
S>>Ну во первых ты говоришь про CoreRT

V>Не я, я ссылки привёл, где CoreRT называли "средой".


Да называют средой из-за сборки мусора. Но ты относительно юнити называл это чистым нативом.
Среда это JIT

S>>который возможно и будет использовать JIT компилятор в рантайме.


V>Сам придумал?

V>Или почитал "новость" из 2016-го?


S>>Но во всех твоих ссылках нет ссылок на JIT в рантайме!!!


V>Потому что AOT антагонист JIT.

Мы говорим про среду. А среда это JIT. При чем тут AOT. NGEN это тоже AOT.

S>>is и as прекрасно работают в Delphi ибо есть информация в VMT по отрицательным смещениям.


V>Но нет остальной метаинформации.

V>А в CoreRT ты можешь взять список мемберов ссылочного типа в рантайм и взять значения этих мемберов.
Для этого ты должен отдельно прописать какие типы ты будешь ипользовать. Можно указать все типы. Но информация о тип это не IL!

V>В плюсах тоже есть кое-какая RTTI, но её можно отключить, если не используется.

Ииии. Значит ты не можешь использовать is/
Как бы там ни было но для GC нужна для типа информация о размере выделяемой памяти и список смещений поле ссылочного типа. Но это не много.

V>>>А насчёт докомпиляции — по ссылке для особо понятливых несколько раз повторяется, что это AOT-технология, но при этом используется тот же самый RuiJIT.

S>>Опять же речь про CoreRT. Опять проблема не AOT, а в рантайме.

V>Проблема в твоём вольном жонглировании терминами.

Неее мы говорим о среде. А среда это JIT!!!

S>>Для .Net Native нет JIT компиляции в рантайме, а значит и нет среды в нормальном понимантт.


V>А откуда ты взял своё "нормальное понимание"? ))

Пото му что ты говоря о IL2CPP говорил, что там нет нета, хотя и есть GC, при этом сборка идес по графу достижимых объектов!
Ссылки я тебе давал.

S>>Под понятием среда в .Net Native это GC, без JIT компиляции в рантайме!


V>И что смущает?

А то, что я тебе про это в самом начале говорил относительно IL2CPP. Но ты упорно называл это полным нативом причем с компиляцией C#.
Я сразу тебе написал и дал ссылку, что среда в .Net Native это GC, но ты упорно не считал это средой. А тут вдруг согласился

V>>>А тебя послушаешь, так даже в случае обычного дотнета, после того как JIT перевёл в нейтив весь наличествующий байткод, сразу "среда" перестаёт быть "средой".

V>>>Ведь происходящее далее не сильно будет отличаться от происходящего в .Net Native UWP.
S>> Нет я как раз приводил ссылку на различие NGEN и .Net Native! передергиваешь
S>>https://stackoverflow.com/questions/68114109/using-system-reflection-emit-in-uwp-with-net-native-tool-chain

V>Да нет, я сказал именно то, что сказал.

V>И мне плевать, что кто-то в рантайм что-то там генерит.
V>Это отдельная задача, требущая наличия соотв. средств.

Да что там в рантайме то можно городить без Il кода??
Только сборка мусора, ну и аналог RTTI.

V>Вот зачем ты мне дал ссылку на какого-то идиота, который хочет JIT и не хочет JIT одновременно? ))

Я тебе привел ссылку на то почему нет JIT в .Net Native ибо просто нет Il кода который нужно компилировать!

V>Даже если всё остальное приложение требует именно сурового нейтивного исполнения, этому дятлу не пришло в голову взять какую-нить готовую скриптовую встраиваемую технологию, типа Lua или Питон:

V>https://docs.python.org/3/extending/embedding.html


S>>Образы IL Fallback — NGEN содержат как машинный код, так и MSIL для сборки (среди других структур данных). Если во время выполнения происходит что-то, что заставляет CLR нуждаться в машинном коде, который он не может найти в образе NGEN, он может вернуться к JITing.


V>Вооот!

V>Наконец-то ты показал суть своего непонимания. ))

V>NGEN предназначен для библиотек, ему обязательно нужен IL для возможности оптимизации кода, использующего библиотеку.

V>В отличие от NGEN, .Net Native запекает код проекта в один самодостаточный образ.


S>>В текущем предварительном просмотре разработчика .NET Native в нативном образе присутствует только нативный код. Это означает, что если код отсутствует в изображении, он никогда не будет выполняться во время выполнения.


V>И это прекрасно! ))



S>> Что по твоему должен компилировать JIT если не IL кода?

S>>>>Подтверди свои утверждения ссылками. Опять голословный треп.
V>>>А в сад тебе не прогуляться, к остальным двоечникам? ))
S>> Вот за что мне нравится с тобой общаться! Подымаешь настроение.

V>Нет, не поэтому тебе нравится со мной общаться.

V>А потому что у меня бесконечное терпение и так жизненно-необходимая тебе дотошность со стороны оппонента.
V>Остальные быстро от тебя отваливаются. ))
Ну в итоге ты наконец то согласился что среда в .Net Native это GC без JIT.
Так в итоге чем Юнити с IL2CPP отличается от .Net Native??
То, что у них допотопный GC это проблемы Unity. Но суть то там одна сборка идет по графу достижимых объектов, пусть и без уплотнения.
И приводи ссылки на свои утверждения. Поверь я рад ошибиться, но главное понять в чем я ошибаюсь