Это копия, сохраненная 31 июля 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
https://github.com/tc39/proposal-flatMap/pull/56
http://tonsky.me/blog/compatibility/
Суть: веб-макаки из комитета стандартизации ECMAScript не понимают, что такое обратная совместимость, и прямо без обиняков заявляют, что мы будем ломать этот ваш веб, так и надо, мы ровно этим тут и занимаемся. Заодно можете посмотреть, из каких дегенератов состоит этот комитет. Обсуждение пулл-реквеста с брейкинг чейнджем наполовину состоит из гифок, мемчиков, смайлов и прочих смехуечек. Подо все это комментарии в стиле "бля, ну если сайту больше двух лет, то его ведь уже можно ломать, who cares?" набирают десятки лайков.
Помни, анон: жс-макака - не инженер. Ссы на нее, насмехайся над ней. Она никогда не напишет хорошего кода, никогда не задизайнит хорошего решения. Все, что она может - это лепить костыли и ломать то, чем ты пользуешься каждый день. Ненавидь ее. Жс-макака хуже пидораса.
#SmooshGate
>If you’re 22 years old web-developer who changes jobs every 18 months, everything older than 2 years seems like old crap nobody cares about, because you only talk to your friends who are also 22 years old and they don’t care so obviously nobody does. You’ve heard scary stories about IE 6, that it was terrible and didn’t support grid layout and obviously people were way stupider back then if they couldn’t figure out grid layout so why would anyone care about that old crap anyways? Anything but move fast and break things is degeneracy, oblivion, and death.
>Let’s stop here for a moment. I always wanted to understand: what, in your opinion, is wrong with Java anyways? Last time I checked it was twice as fast as JavaScript, had static typing, dynamic linking, real multithreading, vast standard library, reliable package manager, tons of languages to compile from (including dynamic ones and yes, JS), ~100ms startup time (same as Node), perfect record of backward compatibility, language changes and API additions every major release, huge internal optimizations yet somehow it manages not to break its APIs and not to piss every developer on the planet. What’s wrong with that? A bit boring, not enough drama? Relationship not abusive enough?
>Reality check: Java does not have a bad reputation. JavaScript does. People laugh at JavaScript, its ecosystem, how it handles things and how childish their problems are.
Вот уж действительно - дегенерация, забвение, смерть гроб кладбище пидор
Ты даун, скажи?
Суть, в левом фреймворке когда-то давно был определен метод встроенного объекта, который теперь внезапно несовместим с методом, который будет специфицирован.
Какая нахуй сломанная обратная совместимость? Может ты хочешь, чтобы спецификация учитывала все васянские поделки, которые лезут расширять встроенные объекты, чтобы избегать конфликтов?
Mootols сами виноваты и наступили на грабли, о которых всех всегда предупреждали и именно из-за которых однажды издохла библиотека PrototypeJS.
>Ты даун, скажи?
Нет.
>Какая нахуй сломанная обратная совместимость?
Очередная веб-макака даже не знает значения этих слов, лол.
>Может ты хочешь, чтобы спецификация учитывала все васянские поделки
Нет, я хочу, чтобы те дебилы с мемасиками следовали принципу "don't break the web". Это совсем не сложно.
Но ты все равно не поймешь. Иди лучше vue.js учи.
Нюанс в том, что JS - это интернет-технология. Следовательно пользователь может скачать новый броузер, поэтому обратная совместимость некритична, а необходимость регулярной переделки сайта дает верстальщикам работу.
>необходимость регулярной переделки сайта дает верстальщикам работу.
работа ради работы. на реальные потребности пользователей всем насрать, главное, что у нас во фронте реакт, ебать. а нет, в этом месяце в тренде редукс, вот, у нас редукс. гиропидоры ебучие, чтобы вы подавились своим смузи
ну как то нада занять десятки миллионов кодерков по всему миру, ок да?
скажи еще спасибо что большие дяди с уоллстрита решили второй раз надуть пузырь айти а не двигать в зеленые технологии, биотех и энергосберегающий хайтек
лучше бы уж в биотех двинули, чтобы биологи из каких-нибудь МГУ рвали себе на жопе волосы от наплыва в индустрию безмозглых дебилов и того, что они творят
Отсоси, пидорок. Жс-смузихлебы правы. Язык должен быть на первом месте. А не тянуть стокилометровый поезд НАСЛЕДИЯ и ебаться с ним каждый раз при эволюции и прицепливании новых вагонов. Иначе получается как в вышеупомянутой джаве - изначально не сделали нормальные дженерики, обойдясь type erasure и теперь десять с хуем лет тянут воз, что нельзя сделать нормально. Что аж даже в других языках придумывают костыли для обхода этого типа копипасты функций в байткоде с проставлением явных типов. Вместо просто нормальных дженериков.
Все правильно делают.
Алсо приведенный тобой пример не стоит выеденного яйца - какая-то левая библиотека 100500 лет назад назвала метод также, как мы хотим и теперь она не будет работать. Да вообще хуй ложить на этих хуил. Их библиотека сломается - их проблемы. Сами починят. А если не починят, то библиотека мертва и пользоваться ей тем более не нужно.
> Жс-макаки как под копирку пишут одно и то же
Ты ведь обратил внимание на описание внутренних проблем Java и их воркэраунд в других JVM-языках?
А ты вообще забавен. Тебя все обоссали, а ты такой, что это сок.
>в треде про обоссывание жс-макак жс-макаки пишут ровно то, на что рассчитывалось при создании треда
>это сок
> жс-макаки меня обоссут
> жс-макаки тебя обоссали
ха-ха, тупые жс-макаки, вы поступили ровно так, как я и рассчитывал.
Пусть проставят в начале js-файла версию js. Версия есть - вертим асинки через генераторы. Версии нет - старое говно, которое поддерживаем еще лет 5-10 в современных браузерах, а потом - нахуй. Захочешь посмотреть какой там был веб в прошлом веке - скачивай старый хром 75 и ебись-веселись.
Заебись придумал?! Меня в комитет! Ну и орден я согласен на медаль.
ОП, найди сайт, использующий Mootools и имеющий хоть 100К уников в месяц, а мы тебе дружно соснем. Проблема, в том что таких сайтов нет.
>>157750
'use strict' вполне хватит
Во времена конкретно этой версии Mootools этого слова не было => есть слово добавляем ES2015+ фичи.
Я бы начал с того что во времена этой версии у половины пользователей JS вообще был выключен.
>жс-макака - не инженер.
Как, врочем, и скрипторебенок, байтодаун, тырпрайзодебил и прочий сброд. Программист - не инженер в принципе, за исключением небольшого процента людей, создающих критически важный софт в финансовом секторе и всяком аэроспейсе. Остальное говно суть макаки, которых можно обучить за месяц и легко заменить.
Не инженер - инженер.
352x420, 4:33
А JS бы компилился в байткод.
Пиздец, блять, не было бы всего этого анал-карнавала с компилированием из JS в JS.
>verything older than 2 years seems like old crap nobody cares about
>вступили в ДИНАМИЧЕСКИЙ язык, самой ПРОГРЕССИВНОЙ айти отралси
>куд-кудах нам ломают веб
вам создают рабочие места идиоты, и дарят возможность использовать весь стак так то делая по паре одинаковых сайтов в месяц ясень хуй ничего кроме блокнота с штмелем ничего не нужно
в рашке слишком спокойно, все хотят построить каменный дом и жить в нем вечно ничгео не меняя, отставая от запада не десятилетия как обычно
надеюсь опу 40 лет и он просто тупой ленивый неосилятор
> необходимость регулярной переделки сайта дает верстальщикам работу.
Заказчик скорее такую технологию нахуй пошлёт, вместе со всеми JS даунами, чем будет каждые 2 года сайт переделывать. Ему бизнес нужен и продажи, а не свистелки и перделки от Васяна с очень сомнительным функционалом.
Наивный даун полагает, что свистелки и перделки в вебе - это прихоть разработчиков, а не требования заказчиков.
Требовать чтобы ты его сайт повалил?
Потому что во-первых дырявое говно, во-вторых проприетарная ссанина, а не веб-стандарт.
И один из них - сергей.
Это кого-то удивляет?
>три бородатых пидора-смузихлёба на гироскутерах
если два других пидоры то наверняка очень несчетных, сомневаюсь что кто то окромя тайских шлюх им дает а сережа няшный :3
крошечный манямирок ниосилятора ушел в отрицалово, найс чо, только я бы на твоем месте макак посторался бы задуматься
ой простите
так говоришь как будто что то плохое
> снова перешло в обсуждение трапов.
>degeneracy, oblivion and death
очевидно же
а вообще как меняется жс, так же меняется и общество, это две живые и очень динамичные структуры
в цивилизованных странах все идет к отвязыванию гендерной роли от пола и по настоящему истинной свободе, выглядит дико, но точно об этом мы узнаем лишь много лет спустя, кодеры же гадкие перверты как представители наиболее абстрактно мысляшей группы, уже живут в будущем, так что всем ня =^-^=
>Mootols сами виноваты и наступили на грабли, о которых всех всегда предупреждали и именно из-за которых однажды издохла библиотека PrototypeJS.
This. Сначала думал, реально что-то хуёвое хотят сделать, а там как всегда кто-то не понял сути.
Ну да. это ведь используется только в одном фрэймворке. А больше ну вообще вообще нигде больше не используется.
Или используется и обновление сломает овердохуя всего.
Заодно выяснили, что js - это проприетарщина, лол.
Будто кто-то в JS треды заходит обсуждать JS, а не трапиков.
Дебилы, блядь.
джавобоярин
Да.
И потом еще весь тред обсуждали бы вопрос "а может лучше все-таки j назвать, а не i?"
Как бы нет, но это было лет десять тому, когда флэш убивали.
ЗАТО СТОМЕГОВЫЕ СТРАНИЧКИ СООТВЕТСТВУЮТ СТАНДАРТУ
Мне больше интересно как въябывание JS скриптов в конец страницы соответствует стандарту? Грузишь такой страницу. А потом ХУЯК - говно перезагружается перерисоывая заново всё.
>за исключением небольшого процента людей, создающих критически важный софт в финансовом секторе и всяком аэроспейсе.
1сник закукарекал.
Единственное технически-корректное решение этой проблемы — заморозка спецификации всех встроенных объектов. Вместо Array#flatten придется ввести какой-нибудь ArrayStatic.flatten, принимающий массив в качестве аргумента, причем сам ArrayStatic должен быть иммутабельным.
Но такое решение приведет к неконсистентности языка: в одном месте зовем arr.reduce, в другом — ArrayStatic.flatten(arr). Нахуй так жить?
Сделать вид, что обратная совместимость переоценена, и внедрить "правильные" изменения — самое удобное решение. Правильнее, конечно, было бы ввести версионирование еще во времена перехода ES3-ES5, но и так сойдет.
>ArrayStatic
>РРЯЯЯЯЯЯЯ ТЫ ЧТО Нельзя вводить в язык никакого ArrayStatic, ведь в прошлых спеках его НЕТ, будет нарушена ОБРАТНАЯ СОВМЕСТИМОСТЬ
>В ЯЗЫК ВООБЩЕ НИЧЕГО ВВОДИТЬ НЕЛЬЗЯ БОЛЬШЕ
Я, наверно, дебил, но обратной совместимостью называлась возможность запуска кода старой версии языка под новой, разве нет?
На правах дебила спрошу, а так ли надо нам этот ЖС? Или это современная версия байки про Джаву, на которой работают 3 миллиарда устройств? Я помню, что, вот, говорили, как же плохо с ява-апплетами, у них доступ к компьютеру есть и вообще всё плохо? Свинг ругали, что он мало похож на родные приложения в средах исполнения, и что писать под Джавой гуи только прокажённые могут.
А потом у нас Электрон, который тянет за собой Хром с шрифтами, которые ещё хуй поменяешь и Электронные приложения тоже не похожи на остальные приложения окружения, в котором это приложение исполняется.
Я что-то пропустил и старая песня внезапно стала вновь популярной?
джава вполне себе живёт, и не собирается помирать.
И что плохого в кроссплатформенной программе? Естественно она будет выглядеть единой для всех платформ, т.е. непохоже на родные приложения
>И что плохого в кроссплатформенной программе?
В кроссплатформенности как раз ничего плохого. Проблема в том, что софт на джаве/электроне таковым не является.
>Естественно она будет выглядеть <...> непохоже на родные приложения
Нет, не естественно. Дейстительно кроссплатформенный софт выглядит родным на любой поддерживаемой платформе.
>Дейстительно кроссплатформенный софт выглядит родным на любой поддерживаемой платформе.
т.е. он предполагает ручную подгонку под каждую платформу?
>Проблема в том, что софт на джаве/электроне таковым не является.
вполне себе является. Любой софт на свинге кроссплатформенный. Я юзаю например josm
>он предполагает ручную подгонку под каждую платформу?
Нормальные тулкиты берут на себя заботу об особенностях платформы.
>вполне себе является
JRE - да, является, софт под неё - нет.
Это как если, скажем, распространять шин32-софт с виртуалкой и шиндосом. Можно, но кроссплатформенным он от этого не станет.
>Я юзаю например josm
Сочувствую.
Ты кончай выёбываться тут.
Как ты тогда вообще себе представляешь кроссплатформенный софт?
> Сочувствую
Лучше говна поди поешь, как ты любишь.
Вот это да, адекват на моих двачах.
> Как ты тогда вообще себе представляешь кроссплатформенный софт?
Открой для себя Qt, смузихлёб.
Я ждал этого ответа, лол.
И чем это отличается от "распространять шин32-софт с виртуалкой и шиндосом"?
Только в qt ещё и компилировать надо свой код под каждую платформу.
Ещё примеры чудесных кроссплатформенных решений будут?
>И чем это отличается от "распространять шин32-софт с виртуалкой и шиндосом"?
Лул, примерно так докер работает под гейос и шиндуксом. Как распознать хипстера с первого взгляда.
>И чем это отличается от "распространять шин32-софт с виртуалкой и шиндосом"?
Чем библиотека отличается от виртуалки? Серьезно?
>Только в qt ещё и компилировать надо свой код под каждую платформу.
В любом случае пришлось бы делать сборки под каждую систему отдельно. Ты же не будешь пользователя заставлять искать и устанавливать jre самостоятельно?
>Ещё примеры чудесных кроссплатформенных решений будут?
wx, ttk
>Лучше говна поди поешь, как ты любишь.
Спасибо, я уже однажды наелся, когда пришлось говнософтину на жаве попользовать.
К счастью, потом нашлась нормальная замена.
Мы продолжаем делать вид, что не поняли о чём речь, да?
Вот браузерный джаваскрипт - он кроссплатформенный. И джава (за редким исключением) - тоже. И, даже, блять, питон - местами, и руби тоже иногда.
Вот такая кросс-платформенность имелась в виду.
И во всех этих случаях есть виртуалка неожиданно, да?
Алсо, покормил.
>Мы продолжаем делать вид, что не поняли о чём речь, да?
Ты ж не говоришь ничего. Что понимать?
>браузерный джаваскрипт - он кроссплатформенный
Нет. Браузерный джаваскрипт работает только в браузере, являющимся изолированной программной платформой.
Ключевое слово - изоляция.
С рубями-питонами осилишь додумать?
По твоему ёбанотому определению "кроссплатформенности" - C/++ и прочие компилируемые языки являются "кроссплатформенными ЯП", ведь они компилируются под любую платформу.
мимокрок
жс-макаки так и не загуглили, что означают слова "обратная совместимость", лол
пиздец, сколько же уебков в этом нашем айти
Пиздец, даунята.
Я так понял они сделали monkey patching много лет назад, а теперь батхёртят.
Почему не иметь Array.prototype.flatten и MooTools.flatten как два разных метода?
И в вебе таких действительно очень много. Лучше бы валялись на грязных обочинах со своими экононмическими и лингвистическими дипломами.
Сперва я хотел намекнуть автору >>160476, что он мудак, ибо негоже так передергивать.
Но лучше сделаю такой намек тебе. Хотя бы потому, что кидаться оскорблениями — непрофессионально.
Но есть и более серьезная причина: глупо придираться к ломающим изменениям, если они неизбежны.
Я немного подумал и пришел к выводу, что даже моя идея с ArrayStatic не является обратно-совместимым решением. Не важно, как именно авторы спецификаций будут добавлять новую функцию в язык — это изменение в любом случае будет либо ломающим, либо безумным.
Допустим, у нас есть вот такой подарок из прошлого: https://jsfiddle.net/q3dcm1z8/
Это ужасный код, он не соответсвует лучшим практикам. Однако, он делает то, что задумано.
Что произойдет, если в язык будет внедрен новый элемент, названный ArrayStatic? Код начнет вести себя иначе.
С любым другим незарезервированным именем возникнет та же "проблема".
Однако, будет ли это действительно проблемой? Ввели Map — никто не пострадал. Добавили Array.prototype.reduce — всем норм, хотя все эти изменения ломающие.
Повторю свои слова: сделать вид, что обратная совместимость переоценена, и внедрить "правильные" изменения — самое удобное решение. Тем более, что такое решение уже принималось и все в итоге остались довольны.
>джава вполне себе живёт, и не собирается помирать.
Джава-апплеты (которые из браузера запускались) я не видел очень давно, как и гуёвые программы под Джаву. Я не буду говорить, что их нет, они есть, но явно не в таких же масштабах, как сейчас ЖС-приложений.
>И что плохого в кроссплатформенной программе?
Собственно, ничего, просто, на мой взгляд, можно было бы найти менее требовательную к ресурсам платформу для кроссплатфоменных программ, чем браузер с ЖС. Я не уверен, что создатели ЖС предполагали, в какого монстра он вырастет через 20 лет, и предполагали ли они вообще, что он будет становиться таким монстром.
Однако сейчас более распространённой платформы, чем браузер с ЖС, нет.
>С любым другим незарезервированным именем возникнет та же "проблема".
Шел 2019 год, жс-макаки упорно двигались к открытию неймспейсов.
Но их пока еще нет. И введение неймспейсов само по себе будет ломающим изменением.
История эпичности той же, что и модульность у c++ макак.
А причём тут неймспейсы-то вообще. Внедрение нового метода в Array — это по сути как ебануть новый метод в std неймспейс.
А эти уёбки в MooTools прекрасненько могли обойтись своими функциями, классами, или на худой конец отнаследоваться от стандартного (и это было бы решение, аналогичное «другому неймспейсу»).
Ну и в современном JS неймспейсы нахуй не нужны, поскольку есть нормальные модули. Они прекрасно справляются с проблемой конфликтующих имён — что импортнул, то и работает.
Просто блять не нужно лезть своими грязными ручонками и менять std стандартные классы и функции. И это очень давно было нормальным общепринятым best practice.
>>159697
Дело тут не в обратной совместимости совершенно.
В спеках — возюкать стандартные классы не запрещалось. Но это ВСЕГДА считалось говнокодом, поскольку другой пидарок из соседней загруженной библиотеки мог ещё раз переопределить этот же метод и сломать твой код.
Здесь это скорее как правило «не использовать глобальные переменные». Их как бы физически можно юзать, но если что-то наебнётся, то ты сам виноват. А так по сути поля и методы Array — это и есть глобальные переменные.
>Внедрение нового метода в Array — это по сути как ебануть новый метод в std неймспейс.
Нет.
>А эти уёбки в MooTools прекрасненько могли
При чем тут моотоолс? Ты не понимаешь, что такое обратная совместимость.
>Ну и в современном JS неймспейсы нахуй не нужны
:]
Ну вообще-то запилили. Java-applet называется. Просто для компов того времени Java-машина была слишком жирной, и никто не хотел ждать минуты, пока она загрузится, плюс java не везде была. Так они и сдохли.
Вообще-то я думаю, что для современных девайсов это уже совсем не проблема, и можно было бы апплеты актуализировать, но они решили новую машинку сделать, посмотрим, как взлетит в этот раз.
Кроссплатформенность - это недетерминированная величина. Она не только может И быть и НЕ БЫТЬ.
Её может быть больше, её может быть меньше.
1) Использование API операционной системы. Например создание мьютексов при помощи CreateMutex. Под линьом работать не будет. Но есть же кроссплатформенные обёртки, так что несчитова.
2) Специфические баги ОС. Иногда в код приходится писать
#ifdef(WIN32) и кучу кода в обход виндовой баготы.
3) Проблемы компиляции.
size_t x;
std::cin >> x;
int array[x];
На винде(MSVS) это не скомпилится.
На линуксе(GCC) -запросто.
То есть кроссплатформенности может быть больше и меньше. И JS(браузерный) точно более кроссплатформенный, чем что угодно. Ведь это внутренний язык. Это как 1С язык. Он одинаково будет исполняться под любой ОС в среде 1С.
Забыл добавить:
C++ и есть кроссплатформенный. Но у него есть некоторые проблемы с этим. Эти 3. У JS их нет.
У жс две платформы: нода и браузер. Кроссплатформенностью между ними и не пахнет. Кстати, между браузерами тоже есть отличия.
Я говорил только о браузерном JS. Тогда ввожу термин кроссбраузерность. JS является кроссбраузерным языком. У него единый стандарт, который описывает как он работает. Однако не все интерпретаторы на 100% поддерживают стандарт, ибо разрабы пидоры. Но такие несостыковки есть и в других кроссплатформенных языках. Где-то больше, где-то меньше.
То что обновление болезненно - это правда. И везде. И речь тут не о ретроградстве. Большинство тех кто не любят обновления просто не хотят с ним ебаться. А фичи новые их только порадуют.
В тех же плюсах перейти на новый стандарт и либы(фреймворки). В C# просто перейти на новую версию .NET.
Обычно для этого создаётся отдельный бранч, и некое время группа людей причёсывает этот код и тестирует.
Но да, поведение макак-разрабов, конечно, желает лучшего. Лучше бы сказали что обновление всегда требует жертв. Поставил себе цель всегда иметь самый новый айфон и самый лучший графон - траться раз в год-два.
>Программист - не инженер в принципе, за исключением небольшого процента людей, создающих критически важный софт в финансовом секторе
Ох лол. Что инженерного в банковских макаках?
JS работающий в браузере работает с объектами браузера. С документом и его ебучим деревом, с оном, строкой ввода и тд.
Ты осуждаешь node.js за отсутствие поддержки отсутствующего функционала?
У спермбанка сайт не на апплетах разве? Вроде в адресной строке у них .do расширения
Ну, где-то и OS/2 стоит и работает. Насчет спермбанка не знаю - никогда не пользовался. "Сдохли" - значит широкого применения нет и уже не будет.
Наркоман штоле? JS уже 22 года стабильно работает.
>Все релизы сделаны мозилой
>Вся разработка сделана мозилой
>Все спецификации с их пинков утверждены
>КОКОКО НЕ ПРОПРИЕТАРЩИНА ЗАТО
>На правах дебила спрошу, а так ли надо нам этот ЖС? Или это современная версия байки про Джаву, на которой работают 3 миллиарда устройств?
Как по мне, я вообще не могу тут увидеть ничего плохово в том, чтобы они например добавили новый метод, а старый просто пометили как тот, который нежелательно использовать. Много кто так делал и при этом умудрились сохранить обратную совместимость. А тут на ровном месте какой-то геморой себе придумали.
> что плохого в кроссплатформенной программе?
Программа одинаково мегахерово работает на любой платформе.
> Внедрение нового метода в Array — это по сути как ебануть новый метод в std неймспейс.
Ну пиздец конечно сравнение. Это как даже не жопу с кальцем сравнить, это как жопу сравнивать с блядь бактерией. Тоесть вроде и жопа и бактерия на земле есть. Но вещи настолько разные что пиздец просто.
Запусти JS программу на копме без браузера. Ах да. Таких программ не существует.
Наркоман штоле? В шиндовс есть интерпретатор жса встроенный, браузер тебе не нужен.
Ну да, я node.js так и юзаю. Два клика ёбнул по нему, и вот он работает. В резюмэ так и написал "Опытный Node.js прогрммист".
Если ты про cscript.exe - то это как-бы не совсем то. Скорее это автоматизаток командной строки. Полноценно гуёвую прогу ты таки запустить не сможешь.
Ну так и не одним гуем живём. Так и сказал, бы, мол, программу с гуем не запустишь.
> отвязыванию гендерной роли от пола
> по настоящему истинной свободе
Скажите мне, что он троллет? Ну пожалуйста, блять! Ебаный стыд.
> Полноценно гуёвую прогу ты таки запустить не сможешь
А если смогу?
Докатились! Обезьяны не понимают сути вещей и не могут обозначить дихотомию "браузерного жс" и цэскрипта. рукалицо же.
И от видовой привязки, чтобы уж и собак няшить заодно.
Предъявите ссылку на строчку в спецификации (актуальную на тот момент, конечно), где сказано что сторонние библиотеки не должны расширять встроенные объеты, товарищ топ петух.
Звиняюсь, не умею выражать свою мысль.
Это должно было быть: "В сишарпе довольно сложно, казалось бы, просто перейти на новую версию .NET"
Что значит "если смогу?"
Вопрос был
>Запусти JS программу на копме без браузера.
Что за ответ такой "А если смогу?"
Покажи как ты это сделаешь с пруфами. А то про кроссбраузерность все говорят. А на практике никто так ни одного примера и не привёл.
>Если у меня пека без монитора
Как ты консольные команды без монитора вводить будешь?
>там не программы?
Ну если ты про всякие IOT, то там скорее что-то типа Hardware Like Interface. Тоесть команда идёт, но вводишь её ты например с пульта, пеки или чего-то типа гейфона.
>А чем не прога то?
Ну конкретно js CLI - это набор скриптов которые запускаются в зависимости от введённой с клавиатуры команды. Тоесть вроде прога работает такая и всё круто. С другой стороны когда ты вводишь для работы команду в 40+ символов, то задумываешься, а нахрена оно вообще надо если ты пол программы уже в команде написал?
Походу тупой только ты. Ввёл ты в свою CLI очередное говно, CLI выдало ошибку. И как ты узнаешь про это? Никак блядь.
Кекнул с этого даунича. В очередной раз вместо ответа
>РЯЯЯЯЯЯЯЯ ВЫ ВСЕ ТУПЫЕ
Что ещё от JS дауна ожидать то?
Как же я проигрываю с треда.
>JS нихуя не кроссплатформенный.
>НИИИИИЕЕЕЕТ ОН КРОСПЛАТФОРМЕННЫЙ ЯСКОЗАЛ
>Он без браузера не запустится
>РЯЯЯЯ ЗАПУСИЦА
>Ок, как запустить JS программу под виндой например
>Ну там какой-то интерпретатор был, ты что тупой?
>Ну приведи пример хотя-бы. Ты про консолько ведь?
>Ряяяяя ты тупой консольки заебись проги их даже можно без монитора запускать
>Как ты собираешься консольные программы без монитора запускать
>РЯЯЯЯЯЯЯЯЯЯЯЯЯ ТЫ ТУПОЙ СМАТРИ МАМ КАКОЙ ТУПОЙ РЯЯЯЯЯЯЯЯЯЯЯ
>жс
>представители наиболее абстрактно мысляшей группы
Назвать её "мыслящей" уже было перебором, про "наиболее" и "абстрактно" вообще молчу.
Двачую тред.
Мимо HTML&CSS разработчик
Чтоб не смеялись - Да в CSS такая же вещь есть, сейчас изобрели Flexbox и Grid и большинство старых технологии стали не нужны типа Float и проч. Так же с CSS можно уже создавать анимации которые раньше делались исключительно на JS.
Никто и не искал.
Да ты ебанат блять, какая строчка в спецификации. Это неотъемлемая возможность языка, Array это любой JS-объект. Правила для всех одинаковые.
НО.
«Расширять глобальный объект» === «использовать глобальную переменную».
Ни в одной блять спецификации никакого языка не запрещено использовать глобальные переменные, но везде карают за такую хуйню. Есть спеки, а есть best practice. Кто их закономерно нарушает, тот идёт нахуй потом имеет последствия.
js-петушня все еще не могла понять, что такое "обратная совместимость", лол
"ну ты нормально делай, епт, нормально и будет"
каменный век
>js-петушня все еще не могла понять, что такое "обратная совместимость", лол
Зачем поддерживать обратную совместимость на устаревших сайтах? Ну пострадает 0.01% пользователей, ну и хуй с ними.
Еще одна макака значения не знает, лол. Обратная совместимость не на сайтах, она в языке.
У меня ощущение, что полтреда на js не написало не строчки и вообще не понимает, о чём речь, лол.
В языке она и не сломается. Я же говорю, полтреда ни строчки на js не написал, и ты один из них, судя по всему.
С хуя ли в языке сломается обратная совместимость?
Язык не гарантирует отсутствие метода у прототипа Array.
Это же /pr – тут полраздела ни на каком ЯП не писало. Вечный "мы вам перезвоним" тред – яркое тому доказательство.
А что такого с МВП-тредом-то не так?
В "мы вам перезвоним"-треде как минимум половина постов от тех, кто работает, но она его не устраиваева
мимо из мы-вам-перезвоним-треда
Лол. Там сидят одни хуесосы. Давно ваш тред надо пидорнуть нахуй.
Ну, вот и мне так кажется, а в блоге по ссылке опа по-другому пишут, мол, пиздец будет, сломается кхуям всё, нельзя в стандартные прототипы ничего добавлять. И хуле?
Боятся в текущем is назвать метод по человечески, чтобы не сломать 8 летний mootools
На самом деле там (в JS) довольно много изменений вводится так, чтобы не ломать старые сайты.
Например, чтобы не ломать сайты, которые используют неочевидные фичи JS при создании ES6 сделали целый раздел: https://tc39.github.io/ecma262/#sec-additional-ecmascript-features-for-web-browsers
Например https://tc39.github.io/ecma262/#sec-block-level-function-declarations-web-legacy-compatibility-semantics посвящён описанию а каком порядке нужно выполнять функции в коде вида
function(a) {
if(a) {
function foo() { return true; }
} else {
function foo() { return false;}
}
return foo();
}
однако если добавить в начало "use strict"; то семантика меняется и обратная совместимость ломается.
В реальном мире никто не перескакивает на новые технологии-инструменты каждые год-два.
Это специфика именно хипстерского веб-говна.
И теперь хипстеры пытаются навязать это остальным, создавая в интернетах хайп в стиле "ололо, этому уже год? оно безнадёжно устарело, теперь так уже не носят".
>Единственное технически-корректное решение этой проблемы
Сделать второй браузерный язык более совершенный чем js, на старых сайтах будет активироватся js на новых сайтах будет новый язык, так как новый язык будет в десятки раз превосходить js в производительности то к нему будет все больше и больше переходить разработчиков.
Да давайте я не против. Осталось на эту мысль натолкнуть w3c консорциум.
Двачую, но уже поздно, надо было вместо es2015 новый язык запиливать. '.es'.
А теперь есть wasm, осталось только подождать лет 10 пока экосисема компиляции под веб разовьётся.
Когда релиз?
То ли дело десктопы. Там под одну винду WinForms, WPF, UWP. И это только из актуальных. Был еще сдохший Silverlite, MFC, WinAPI.
В браузер в разное время были встроены такие вещи как JVM(везде), flash(везде), activex(не везде, но в то время когда он был, аудитория у браузера в котором он был была овер 80%), silverlight(не везде и же поздно, так что отбросим).
Так что, пилили веб целиком на этих технологиях? Никогда. Все сводилось к не более чем компонентам. Были целиковые сайты на флеше в конце 90х-начале 00х, и их точно так же вытеснили сайты на js, оставив флешу участь только встраиваемых компонентнов расширяющих апи браузера (плееры\доступ к фс\веб-камерам) и игрушки, а потом и вовсе перестали на нем пилить.
То же самое и с wasm'ом - никогда не будет так, как вы мечтает. Веб не будут пилить на васме и на других языках в него транслируемых, (да-да, даже на языках транслируемых в васм). На самых ранних парах, когда браузер был один (ie) и пилили кучи кастомных, пытались протаскивать вместо жса - питон, луа, tk - ничто не взлетело. Сейчас есть масса яву транслирущихся в js - их доля в веб разработке ничтожно мала. Ничтожно. Я пишу веб с 95го года. Я пережил столько революций\эволюций, что вам и не снилось. HTML и JS в вебе навсегда. Все остальное будет использоваться только поверх этого и для компонентов.
Он не мой. Он давно уже сообщества. И нет, не будет. Так же как не родилось убийцы плюсов, но родится убийцы js. И все, кто в разработке чуть более, чем дохуя, это понимают.
Этого не случится еще и потому, что wasm-бинари тяжелее сорцов жса. А wasm бинари включающие рантайм яву, будут пиздец как нерентабельны.
>wasm-бинари тяжелее сорцов жса
лолшто? что они там наговнокодили.
я думал wasm это просто такой javascript байткод
Как же заебали долбоёбы, которые не видят разницы между левыми технологиями коммерческих компаний и стандартом от w3c.
ого тут помнят сильверлайт. я его ковырял когда то офигеть
"Classes.zip" или что там у тебя в CLASSPATH записано, школотун. Или ты думаешь, апплетик на AWT сам работать начнёт?..
То есть ты веришь что на WASM начнут делать сразу новые приложения, что ли?.. Но смотри не рассказывай никому, засмеют!
Хуйню сморозил. Тебе уже написали на это, что у тебя "инженер не инженер". Или возможно ты имел ввиду госконторную классификацию типа "техник-программист < инженер-программист", тогда это тебя как-то оправдывает.
Это где std::x1? std::placeholders::_1 может? Или нет? Я загуглил специально, но гугль тоже ничего не выдал, если ты о крестах.
В кьюте окошки ЯВНО не "выглядят родными" ни под винду, ни под распространенные иксы для никсов.
Сейчас бы небезопасное расширение гцц:
а) назвать "проблемой компилятора"
б) назвать это проблемой не гцц, а других компиляторов, которые не имеют этого расширения, и в итоге прийти к выводу что это шиндопроблема
б) назвать "проблемой C++" парой строк ниже
WinAPI не сдох, просто прошло время когда люди пердолились с ним напрямую чтобы сделать вещи, для которых или не было библиотек, или геморрой с ними был сопоставим с таковым от изучения винапи.
>создающих критически важный софт в финансовом секторе
Это тот же тырпрайз, дебик, только чуть более задрюченный.
wasm это разработка whatwg, а не w3c.
ровно как и html5, не разработка w3c
w3c вообще уже давно ничего не делает, кроме как пилит деньги спонсоров и присваивает номерки уже готовым спекам тех или иных технологий.
с васмом то же самое, можешь пройти из своей википедии по ссылке внизу в группу wasm на w3c и увидеть, что там одно единственное сообщение от 2015 года.
потому что wasm никогда не имел отношения к w3c. это разработка whatwg.
Флэш - это дырявая посторонняя проприетарная вм. Поэтому от него все отказывались. Потому что дыры всплывали через день.
wasm работает на уже существующей vm в браузере.
И сервелат таким был, и jvm долгое время.. но закапывать начали только после айфононовостей.
То бишь будет конпеляция код -> wasm -> js -> V8/Rhino/Chakra/Spidermonkey ? Или же код -> wasm ->V8/Rhino/Chakra/Spidermonkey и надо будет ждать поддержки каждого движка? Или как у нододетей, ничего кроме V8 не существует
>закапывать начали только после
Нет. Закапывать начали задолго до.
>надо будет ждать поддержки каждого движка
wasm пилится группой из разработчиков браузеров apple\google\firefox\edge. Не знаю, что ты там собрался ждать, но он поддерживается уже всеми основными движками. Давно.
> и прямо без обиняков заявляют, что мы будем ломать этот ваш веб, так и надо
Пусть ломают. Гори этот сраный веб синим пламенём, ненавижу его.
Молодой человек, это не для вас видно.
Как же хочется няшный векторный фидонетик...
application:get_env/2, application:set_env/3
Это копия, сохраненная 31 июля 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.