Pull to refresh
76
0
Денис Пушкарев @rock

JS

Send message

Редиректит, если подписка уже активирована.

Посмотрел тред.

проверьте https://github.com/settings/copilot

Вы, видимо, не ту ссылку кинули, должна быть https://github.com/github-copilot/free_signup, тут доступен -)

GitHub Copilot доступен бесплатно для ... мейнтейнеров популярных проектов с открытым исходным кодом.
Если Copilot недоступен, значит ваш проект не соответствует критериям, т.е. ему нужно больше звёзд.

Зачем-то решил проверить. Недоступен. Видимо, 23.7к звезд маловато. Штош.

А вам как часто нужно сделать из nodejs подобное и именно таким образом? Мне - уж точно не часто, задачи чуть менее, чем всегда, куда сложнее.

Постоянно нужно запустить пачку задач параллельно и дожидаться их выполнения. Синхронные версии методов уже не подходят, нужны асинхронные, при том возвращающие обещания - нужны async / await, комбинаторы и т.п. Нужно передать в cli какие-то параметры, при том экранированные, дабы ничего не сломать. Отображать вывод по мере поступления или наоборот его скрывать. Да много чего ещё.

Все можно сделать с помощью child_process - вот только в инструментах вроде zx так оно и сделано. Зачем самому писать обертку-велосипед, если она уже написана и дает какой-никакой стандарт?

Если вы не понимаете зачем - вам и не надо.

В свое время, появление zx серьезно облегчило мне жизнь. Многие задачи теперь занимают в разы меньше времени, чем когда приходилось связывать вызов cli и модули на js шелл скриптами. Кодовая база проектов похудела на многие сотни строк. Одна строчка await $.. вместо реализацией того же каждый раз через child_process в десятки строк кода уж подключения такой зависимости явно стоит.

Ну а про powershell и wsl - это, надеюсь, шутка такая была?

О проблеме в багтрекер V8 написали?

Iterator Helpers, что работают лениво, снова будут включены по умолчанию начиная с Chrome 122. Ну и полифилы никто не отменял. А через полгодика ждем в стабильном ES.

Когда используешь что-то большее, чем единый для npm / pnpm / yarn функционал, когда это достаточно крупный проект - да, это достаточно серьезные переделки.

Но всё же согласитесь, что позиция разработчиков pnpm серьезно повышает риски. Как по мне - так неприемлемо высоко для серьезного бизнеса.

Тем более если действительно автор что-то вредоносное сделает с исходниками, то это прецендент и он быстро потеряет популярность и аудиторию не только России.

Ой, сомнительно. Например (а это один пример из многих), после февраля 22го пакет event-source-polyfill в российских часовых поясах в части окружений показывал алерт о злых русских, блокировав страницу, а в части окружений её просто крашил. Особенно весело, когда подобное приходит как зависимость зависимости. ЕМНИП, NPM отказался это дело удалять, сочтя приемлемым protestware. Через полгодика, вроде, после срача на MDN, изменения откатили назад. И что, хоть как-то сказалось на популярности? Мало того, слишком многие западные коллеги писали, что так и надо. А некоторые, в десятки раз более популярные пакеты (es5-ext, например), до сих пор не откатились.

Да и по поводу тренда сомнительно - везде гайки закручиваются, вполне может и сюда опять перекинуться.

Если между точкой возникновения проблемы и ее эффектом больше 128 шагов где все хорошо - приятной отладки

И что, часто у вас с этим проблемы? Я вот занимаюсь, в основном, совместимостью и кучу времени провожу за отладкой. Практически каждый день, во всех движках, в том числе в древних, в том числе во всех версиях Safari, начиная с 5ой. Пишу и часто вынужден отлаживать полифилы Iterator Helpers, Async Iterator Helpers, Observable и т.д. - то есть, считайте, очень близкое к тому, что и в инструментах, упомянутых вами. И, знаете, как-то таких проблем не возникает.

PTC это не TCO

Мы это уже выяснили выше.

Т.е. улучшения производительности фича явным образом не предполагает. А что тогда?

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

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

Только в случае конкретной оптимизации, для остальных смысла переходить на иную модель нет.

Ну так это ведь проблема реализации (пока не стандартизованного) отображения стека вызова, а не хвостовой рекурсии как таковой. Да и у меня проблем с этим как-то не возникало.

PTC или TCO - уже детали.

Остальные не то, чтобы не осилили - там работы на вечер. Добавили, не понравилось, убрали.

Не так. Добавили по быстрому под флагами, поняли, что это вырубает многие оптимизации, а переписывать, что бы работало быстро и память не жрало - долго, дорого и лениво - потому и убрали - достаточно дискуссий по этому поводу было.

PTC убивает историю вызовов функции в стек трейсах - при ошибке вы видите только последний вызов

А это дело (пока) вообще не стандартизовано и без проблем можно в историю коротко записать, что и где рекурсия.

Хвостовая рекурсия есть в JS со времен ES6 и поддерживается в Safari, вот только разработчики других популярных движков поигрались с ней, не нашли дешевого способа её реализовать и просто забили.

Какие вам интересны подробности? -) Получил об этом письмо, приятно конечно.

Какие-либо деньги из этой программы мне сейчас получить проблематично, так как там используется только Payoneer - а в России он всё, так что даже не знаю о какой сумме речь идет - надеюсь, рано или поздно получу.

Так что больше сказать и нечего.

Ну мои по решению приставов заблокированы - а, как видите, способы доната из России ищут.

1
23 ...

Information

Rating
Does not participate
Location
Барнаул, Алтайский край, Россия
Date of birth
Registered
Activity