Re[40]: А что мешает заменить JS?
От: alex_public  
Дата: 28.03.17 14:53
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>"адепты последних ..." — это так ты говоришь про технологии ? Ты постоянно отказываешься от своих слов, потому тебе и верить нельзя. Завтра же откажешься от своей таблички на ровном месте.

_>>Ну так а что же ты не закончил цитату то? ) Покажи где я там написал, что "адепты последних так себе". Или в очередной раз окажешься вруном.
I>Точнее ты назвал их неадекватными.
I>"адепты последних обычно достаточно разумны" — речь про Питон и JS. Итого — обобщение и характеристика людей, а не технологий.
I>"адепты первых..." — это про C# и Java. "...таким неадекватным товарищам приходится открывать глаза на реальность" И снова, обобщение и снова про людей, а не про технологии.

О, да у тебя похоже ещё и проблемы с базовой логикой... Раз ты слово "иногда" назвал обобщением. Хотя постой, этого слова же почему то нет в приведённой тобой фигурной нарезке по моим цитатам, хотя в оригинале оно есть. Может у тебя и не проблемы с логикой, а банальная нечистоплотность с целью оправдать своё откровенное враньё? )

I>>>Ну да, а если порыться в форуме в сообщениях двух-трехлетней давности...

>>Сообщение там шестидневной давности. ) Да и рыться нигде не надо, т.к. оно не только свежее, но и находится прямо в обсуждаемой теме. )))
I>Ты считаешь, что я обязан всю тему вычитывать на предмет поиска ссылок на обсуждение двухлетней давности ? Какой в этом смысл, если ты отказываеся от своих слов по нескольку раз на день ?

Вообще то даже самому начинающему программисту это всё не требовалось бы, т.к. переписать данный простейший кусок кода с JS на остальные языки не может разве что инвалид умственного труда. ))) Однако, как видишь, даже если ты и такой, то для тебя всё равно были заботливо подготовленные соответствующие шпаргалки... ))) Кто же виноват, что ты не способен не только переписать двойной цикл, но и даже проскролиться по первой странице темки.
Re[41]: А что мешает заменить JS?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 28.03.17 15:09
Оценка:
Здравствуйте, alex_public, Вы писали:

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


_>>>Нет, у меня не установлена инфраструктура под него (собственно я даже не в курсе что там требуется установить, чтобы собрать соответствующее приложение). ) Я и .net то не ставил специально, просто он у всех пользователей винды присутствует по умолчанию. )))

S>> Ну вот здесь пишут http://our.componentone.com/2017/03/09/uwp-performance-and-net-native-compilation/
S>>Что в VS 2017 порядка 600 исправлений и типа существенно повысили производительность на некоторых сценариях.

_>Ну это как бы ни о чём не говорит, если не известны изначальные цифры. Если ты мне покажешь где можно скачать компилятор (а не VS) для .net native, который нормально бы работал просто из командной строки (как обычный компилятор C# из поставки .net), то я могу прогнать некоторые тесты, чтобы увидеть разницу с обычным .net'ом и с C++.


S>> Кстати интересная статья https://dzone.com/articles/net-native-performance-and


_>О да, и в качестве C++ компилятора там естественно используется MSVC 2013 — убогая хрень со слабым и набитым багами оптимизатором. А с gcc или icc сравнить конечно же никто не хочет. ))) Хотя там в тесте есть упоминания о том, что они попробовали Clang (тоже не самый сильный оптимизатор) и даже он он выдал результат в 2 раза лучше MSVC. Но внести эти данные в табличку они конечно же постеснялись. )))


Ну так возьми и проверь. Там есть все и код.
Вот тогда твои слова про отстой C# будут весомы.
и солнце б утром не вставало, когда бы не было меня
Re[42]: А что мешает заменить JS?
От: alex_public  
Дата: 28.03.17 15:58
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>>> Кстати интересная статья https://dzone.com/articles/net-native-performance-and

_>>О да, и в качестве C++ компилятора там естественно используется MSVC 2013 — убогая хрень со слабым и набитым багами оптимизатором. А с gcc или icc сравнить конечно же никто не хочет. ))) Хотя там в тесте есть упоминания о том, что они попробовали Clang (тоже не самый сильный оптимизатор) и даже он он выдал результат в 2 раза лучше MSVC. Но внести эти данные в табличку они конечно же постеснялись. )))
S> Ну так возьми и проверь. Там есть все и код.
S> Вот тогда твои слова про отстой C# будут весомы.

Ну их C++ пример я без проблем могу собрать и запустить. А вот их C# пример выглядит для меня сложно — куча всяких файлов сомнительных помимо самого кода. Если подскажешь как это можно спокойно собрать из командной строки (не ставя VS), то могу тоже собрать и прогнать. )
Re[23]: А что мешает заменить JS?
От: Mystic Artifact  
Дата: 28.03.17 16:43
Оценка:
Здравствуйте, alex_public, Вы писали:

_>>>Во-первых JS движок не должен находиться между wasm и браузерными функциями. Не говоря уже о том, что некий api нужен всегда, а вот JS движок будет далеко не во всех программах, интегрирующих в себя движок wasm.

MA>> Ох же ж. Просто, что бы было ясно: WASM выполняется не в космосе, а внутри JS движка.
_>В документации на wasm чётко указано, что это временное явление. Т.е. сейчас wasm загружается через js, а в будущем будет через html тег script, без всякой привязки к js. Кстати, не исключаю, что такое временное решение как раз из-за отсутствия доступа к web api, т.к. сейчас чтобы получить реальную пользу от wasm надо предоставлять ему набор js функций для импорта. А при наличие доступа к web api это будет уже не особо нужно.
А JIT где взять? Процессоры wasm не исполняют.

_>В идеальном мире JS в браузерах стал бы поддерживаться в виде одного из многих языковых движков (ну разве что с мелким отличием от остальных, что он входит в поставку браузерах, а не качается отдельно) скомпилированных под wasm. Т.е. что бы хост (браузер или что-то там ещё) предоставлял свой api только через wasm. Но с нашим историческим наследием мы видимо (насколько я понял из описание разработчиков wasm) получим другую схему — некий внутренний C++ api (свой для каждого браузера) поверх которого сидят два движка: js и wasm. А ты предлагаешь вообще наоборот, использовать в wasm api браузера "через" js движок? )

Я ничего не предлагаю. Пока что движок у всех один. Я не вижу ни одной причины иметь два скриптовых движка. Зачем?!

_>Зачем держать ссылку, если там есть this? ) Который в случае интерфейса в стиле C будет всего лишь очередной непрозрачной ссылкой, передаваемой в обработчик события.

Где там? Почему его нужно использовать? Обработчик события может держать ссылку на родительский элемент, например. Или вообще на произвольный.
Re[43]: А что мешает заменить JS?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 28.03.17 16:47
Оценка:
Здравствуйте, alex_public, Вы писали:

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


S>>>> Кстати интересная статья https://dzone.com/articles/net-native-performance-and

_>>>О да, и в качестве C++ компилятора там естественно используется MSVC 2013 — убогая хрень со слабым и набитым багами оптимизатором. А с gcc или icc сравнить конечно же никто не хочет. ))) Хотя там в тесте есть упоминания о том, что они попробовали Clang (тоже не самый сильный оптимизатор) и даже он он выдал результат в 2 раза лучше MSVC. Но внести эти данные в табличку они конечно же постеснялись. )))
S>> Ну так возьми и проверь. Там есть все и код.
S>> Вот тогда твои слова про отстой C# будут весомы.

_>Ну их C++ пример я без проблем могу собрать и запустить. А вот их C# пример выглядит для меня сложно — куча всяких файлов сомнительных помимо самого кода. Если подскажешь как это можно спокойно собрать из командной строки (не ставя VS), то могу тоже собрать и прогнать. )



Могу собрать и выложить
и солнце б утром не вставало, когда бы не было меня
Re[47]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 17:24
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Гугл вкладывает десятки миллионов в год для того, чтобы избавить мир от JS.

V>И он будет упорно вкладывать их и дальше.

Вот что-то не верится в такой альтруизм гугла. Опять же, нахрена JS движок столько пилили?
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[48]: А что мешает заменить JS?
От: vdimas Россия  
Дата: 28.03.17 17:27
Оценка: +1
Здравствуйте, Ops, Вы писали:

V>>Гугл вкладывает десятки миллионов в год для того, чтобы избавить мир от JS.

V>>И он будет упорно вкладывать их и дальше.
Ops>Вот что-то не верится в такой альтруизм гугла.

Это не альтруизм, это оптимизация расходов. ))
Ему самому разработка на JS слишком дорого обходится.


Ops>Опять же, нахрена JS движок столько пилили?


Чтобы Хром завоевал место под солнцем и Гугл мог влиять на стандарты как ему удобно.
Как только цель была достигнута, JS-движок забросили, считай.
Когда-то он был самым лучшим в тройке, теперь самый худший.

Ты еще спроси, зачем Гугл финансирует 95% бюджета Мозиллы. ))
Тоже альтруизм такой?
Re[46]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 17:33
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>А вот мировая статистика

S>http://lpgenerator.ru/blog/2016/03/31/luchshij-yazyk-programmirovaniya-dlya-izucheniya-v-2015-godu-spros-na-uslugi-i-zarplata/

500 000 ИТ-вакансий по всей территории США, Великобритании и Австралии


Ну т.е., например, Китай, откуда идет самое большое количество встроенных решений, отбросили как незначительный.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[24]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 17:41
Оценка:
Здравствуйте, Serginio1, Вы писали:

S> Лучше изучайте Angular 2 и TypeScript.


Если идея взлетит, то от этих ваших ангуляров может остаться только поддержка легаси.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[29]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 17:54
Оценка:
Здравствуйте, alex_public, Вы писали:

_>WASM модуль будет в таком раскладе ровно один — движок Питона.


Ты, наверное, не понял, он все же дело говорит. Интероп между васмом нужен обязательно, чтобы можно было использовать чужие модули, на других языках.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[49]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 18:08
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Ты еще спроси, зачем Гугл финансирует 95% бюджета Мозиллы. ))

V>Тоже альтруизм такой?
Почему же, хотят чего-то. Но почему ты решил, что цель — именно выпилить JS? Пока вот https продвигают, скоро обычный http совсем выпилят. И такая наркомания у них в порядке вещей, так что ждать какой-то логики не приходится.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[50]: А что мешает заменить JS?
От: vdimas Россия  
Дата: 28.03.17 20:42
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Почему же, хотят чего-то. Но почему ты решил, что цель — именно выпилить JS?


Зачем выпилить? Пусть живёт потихоньку.
Просто Гугл перестал в него вкладываться, в сравнении с ситуацией во второй половине нулевых.


Ops>Пока вот https продвигают, скоро обычный http совсем выпилят. И такая наркомания у них в порядке вещей, так что ждать какой-то логики не приходится.


Я думаю, что алгоритм тут простой:
— с каждым годом функционал сервисов улучшается, т.е. становится тупо больше кода и этот код становится всё сложнее;
— на JS и Ко развивать и поддерживать такой код становится всё дороже; требуется более дешевый инструмент.


Гугл разработал Dart не от хорошей жизни.
Он, вроде бы, такой же как другие, а на самом деле нифига не такой по совокупному набору качеств.
Но это всё-равно расходы (на разработку и популяризацию языка), но эти расходы уже покрылись, как сами они брешут — хвастаются почти двукратным приростом производительности разработчиков.
Отредактировано 29.03.2017 19:50 vdimas . Предыдущая версия .
Re[24]: А что мешает заменить JS?
От: alex_public  
Дата: 28.03.17 20:50
Оценка:
Здравствуйте, Mystic Artifact, Вы писали:

_>>В документации на wasm чётко указано, что это временное явление. Т.е. сейчас wasm загружается через js, а в будущем будет через html тег script, без всякой привязки к js. Кстати, не исключаю, что такое временное решение как раз из-за отсутствия доступа к web api, т.к. сейчас чтобы получить реальную пользу от wasm надо предоставлять ему набор js функций для импорта. А при наличие доступа к web api это будет уже не особо нужно.

MA> А JIT где взять? Процессоры wasm не исполняют.

Ну например здесь https://github.com/WebAssembly/wasm-jit-prototype. Хотя я подозреваю, что в топовых браузерах будут использовать не ванильную реализацию, а каждый свою, с персональными оптимизациями, и будут соревноваться в них. )))

_>>В идеальном мире JS в браузерах стал бы поддерживаться в виде одного из многих языковых движков (ну разве что с мелким отличием от остальных, что он входит в поставку браузерах, а не качается отдельно) скомпилированных под wasm. Т.е. что бы хост (браузер или что-то там ещё) предоставлял свой api только через wasm. Но с нашим историческим наследием мы видимо (насколько я понял из описание разработчиков wasm) получим другую схему — некий внутренний C++ api (свой для каждого браузера) поверх которого сидят два движка: js и wasm. А ты предлагаешь вообще наоборот, использовать в wasm api браузера "через" js движок? )

MA> Я ничего не предлагаю. Пока что движок у всех один. Я не вижу ни одной причины иметь два скриптовых движка. Зачем?!

Потому как они принципиально разные по своему устройству. Да, и кстати, если уж всё же выражать один через другой, то очевидно что надо js выражать через wasm, а не наоборот. Всё же JS движки пишут на нативном коде, а не наоборот (Emscripten — это всё же некое извращение). Но это означало бы слишком большую переделку современных браузеров, так что видимо будут просто два отдельных соседа поверх web api. )

_>>Зачем держать ссылку, если там есть this? ) Который в случае интерфейса в стиле C будет всего лишь очередной непрозрачной ссылкой, передаваемой в обработчик события.

MA> Где там? Почему его нужно использовать? Обработчик события может держать ссылку на родительский элемент, например. Или вообще на произвольный.

Ну в JS у нас есть this — неявный указатель на контекст. А в классических C API подобный указатель просто передаётся явно.
Re[46]: А что мешает заменить JS?
От: vdimas Россия  
Дата: 28.03.17 21:04
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>объявлениях о вакансии больше всего представлены следующие технологии:

S>Java – в 18% объявлений с средней зарплатой в $ 100 000 USD
S>JavaScript – 17%, $ 90 000
S>C# — 16%, $85 000
S>C — 9%, $90 000
S>C++ — 9%, $90 000

А можно рядом нарисовать табличку по языкам средней продолжительности работы на одном месте?



S>И в ней JS побеждает.


Текучка?


S>Но конечно я верю вам с vdimas и TIOBE


Не надо верить, надо голову включать.
Не столько интересует кол-во вопросов по какому-то языку, сколько абсолютное кол-во программистов по языкам, верно?


S> Кто я такой?


1C туда не включается. ))
Отредактировано 29.03.2017 10:04 vdimas . Предыдущая версия .
Re[44]: А что мешает заменить JS?
От: alex_public  
Дата: 28.03.17 21:07
Оценка: 2 (1)
Здравствуйте, Serginio1, Вы писали:

_>>Ну их C++ пример я без проблем могу собрать и запустить. А вот их C# пример выглядит для меня сложно — куча всяких файлов сомнительных помимо самого кода. Если подскажешь как это можно спокойно собрать из командной строки (не ставя VS), то могу тоже собрать и прогнать. )

S>Могу собрать и выложить

Ты мне лучше расскажи, что мне установить на компьютер (монстров типа VS, загаживающих всю систему, не предлагать), чтобы у меня в командной строке появился компилятор C# для .net native. Оно же вроде и на Линухе должно работать, значит должен быть нормальный вариант установки...

Кстати, я ради развлечения запустил эти твои тесты (ну чуть подправив глупость в точке измерения и формат вывода). Конечно они во многом сомнительные (по своей идеологии), но хотя бы честные по своей сути. Значит результаты на моей машине:
>gcc
AddVectors - 310.018 us
AddScalarToVector - 150.009 us
Memcpy - 60.004 us
MulDivShifts - 4050.23 us
MatrixMultiplication - 12460.7 us
Mandelbrot - 6510.37 us

>msvc
AddVectors - 326.145 us
AddScalarToVector - 154.558 us
Memcpy - 325.284 us
MulDivShifts - 3978.84 us
MatrixMultiplication - 17525.4 us
Mandelbrot - 7053.23 us

>c#
AddVectors - 776,006 us
AddScalarToVector - 540,403 us
Memcpy - 718,596 us
MulDivShifts - 4495,919 us
MatrixMultiplication - 30369,485 us
Mandelbrot - 8166,287 us

InterfaceDevirtualization - 2113,546 us
AbstractClassDevirtualization - 1584,913 us
Re[30]: А что мешает заменить JS?
От: alex_public  
Дата: 28.03.17 21:21
Оценка:
Здравствуйте, Ops, Вы писали:

_>>WASM модуль будет в таком раскладе ровно один — движок Питона.

Ops>Ты, наверное, не понял, он все же дело говорит. Интероп между васмом нужен обязательно, чтобы можно было использовать чужие модули, на других языках.

Ну так если говорить про загрузку других нативных модулей, то это одна из стандартных возможностей Питона. Т.е. на винде например он может загрузить любую нативную dll и вызвать из неё функцию. Соответственно в версии под wasm движок Питона должен будет обеспечивать аналогичную функциональность, только вместо dll будут wasm модули.

А вот единого пространства имён или какого-то ещё взаимодействия с другими скриптовыми языками (включая JS) мне кажется всё же не требуется.
Re[31]: А что мешает заменить JS?
От: Ops Россия  
Дата: 28.03.17 21:43
Оценка:
Здравствуйте, alex_public, Вы писали:

_>Ну так если говорить про загрузку других нативных модулей, то это одна из стандартных возможностей Питона. Т.е. на винде например он может загрузить любую нативную dll и вызвать из неё функцию. Соответственно в версии под wasm движок Питона должен будет обеспечивать аналогичную функциональность, только вместо dll будут wasm модули.


Ну питон. А если LUA, или, прости господи, ПХП? Загрузка модулей должна быть не программной, а декларативной, непосредственно в html

_>А вот единого пространства имён или какого-то ещё взаимодействия с другими скриптовыми языками (включая JS) мне кажется всё же не требуется.


Да не с языками, а с другими модулями, на каком там внутри языке — не важно, нужны интерфейсы для интеропа. Написал я на бейсике свой код — должна быть возможность из него дергать гуглокарты и постить в твиттер, на чем бы они ни были написаны, и без дополнительных библиотек специально для моего диалекта бейсика.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[41]: А что мешает заменить JS?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 29.03.17 08:31
Оценка:
Здравствуйте, alex_public, Вы писали:

I>>Точнее ты назвал их неадекватными.

I>>"адепты последних обычно достаточно разумны" — речь про Питон и JS. Итого — обобщение и характеристика людей, а не технологий.
I>>"адепты первых..." — это про C# и Java. "...таким неадекватным товарищам приходится открывать глаза на реальность" И снова, обобщение и снова про людей, а не про технологии.

_>О, да у тебя похоже ещё и проблемы с базовой логикой... Раз ты слово "иногда" назвал обобщением.


Обобщение это процитированые мной фразы, например "адепты первых..." "...таким неадекватным товарищам"

Логика у тебя ажно блещет.

I>>Ты считаешь, что я обязан всю тему вычитывать на предмет поиска ссылок на обсуждение двухлетней давности ? Какой в этом смысл, если ты отказываеся от своих слов по нескольку раз на день ?


_>Вообще то даже самому начинающему программисту это всё не требовалось бы, т.к. переписать данный простейший кусок кода с JS на остальные языки не может разве что инвалид умственного труда. )))


Ну и логика у тебя. Как я узнаю есть ли проблема в твоём коде на другом языке, если перепишу его сам ?
Re[48]: А что мешает заменить JS?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 29.03.17 08:33
Оценка: -1
Здравствуйте, Ops, Вы писали:

V>>Гугл вкладывает десятки миллионов в год для того, чтобы избавить мир от JS.

V>>И он будет упорно вкладывать их и дальше.

Ops>Вот что-то не верится в такой альтруизм гугла. Опять же, нахрена JS движок столько пилили?


Не "пилили", а яростно продлжают пилить, например. новый тулчейн влупили для того, что бы больше оптимизаций можно было реализовать.
Re[49]: А что мешает заменить JS?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 29.03.17 08:34
Оценка:
Здравствуйте, vdimas, Вы писали:

Ops>>Вот что-то не верится в такой альтруизм гугла.


V>Это не альтруизм, это оптимизация расходов. ))

V>Ему самому разработка на JS слишком дорого обходится.

Обходится слишком дорого и гугл только повышает ставки ?

V>Как только цель была достигнута, JS-движок забросили, считай.


В чем это проявляется ?

V>Когда-то он был самым лучшим в тройке, теперь самый худший.


Ога!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.