Pull to refresh
32
0

Разработчик

Send message
Единственная «выжившая»
Ну дак статья и повествует про всякие маргинальные платформы, их состояние и про то, что они как бы не выживают.
Нет, не вычитаются, а добавляются, потому что сами по себе несут ценность и могут входить в добавочную стоимость других продуктов, проприетарных или свободных, но т.к. производные свободные будут так же бесплатны, то я сузил до проприетарных.
В сэкономленные бизнесом деньги, которые потом попадают в добавочные стоимости их проприетарных продуктов.
Вопрос к товарищам-апдептам Инкскейпа и векторной графики в целом. Если ли в Инкскейпе или в аналогичном софте функция создания констрейтов для точек? Допустим, у нас есть симметричный контур, в нём есть две точки, которые я хочу соединить констрейтом вида: если меняется x одной, то так же меняется x другой. Или, например, поменяли x одной, с тем же значением, но противоположным знаком меняется x у другой. Могут быть и более сложные функциональные зависимости. Это было бы полезно при создании всяких симметричных контуров, логотипов (может быть и для шрифтов подойдёт, но у шрифтовиков уже всё это, вероятно, есть в их специализированном софте).
Вам может быть интересна эта публикация. У вас лишь похоже на Lisp (да и такой цели не стояло, как я понимаю. У вас акцент на стековости), а там автор поставил себе цель попытаться воспроизвести Лисп достаточно близко на синтаксисе Питона. То есть собственного парсера тоже нет, просто используется тот факт, что кортежи визуально похожи на S-выражения.

Ещё в комментах люди соревнуются в минимальных реализациях Lisp :D
Так долго ждал проксей, что уже даже и не нужно.
выполненные обещания не отменяются и не передают команду для отмены дальше
Как раз такое поведение реализовано по второй ссылке что я скинул.
Cancel this promise with the given reason. The cancellation will propagate to farthest cancellable ancestor promise which is still pending.
А ещё можно создавать свой промис и пометить его как отменяемый.
Вообще, говоря, отменять что-то это не задача промисов. Промисы это как бы транспорт для возврата результата. А «отменяемость» это фича того поставщика данных, который нам даёт промис. Если реализовать это в промисе, то что делать с источниками данных, которые в принципе не поддерживают отмену?:

Promise.resolve(5) // возвращаем константу, отмена?

Поэтому в минимальной реализации промисов нету отмены. А вообще, если очень хочется, то можно.
В мире ECMAScript микрозадачи именуют заданиями («jobs»).
Вот это место смутило. По идее как раз стандарт и определяет что и как называется. Тогда неясно откуда взялась «авторское» именование и почему оно противоречит стандарту и, мало того, указывается как основное, более правильное (!).

Что касательно задач и микрозадач, то, опять же, я думаю, ситуация здесь несколько проще, чем автор пытается нам описать.
Задача, в терминологии автора, соответствует функции, прилетевшей из события или таймера (setTimeout, setInterval), а микрозадача соответствует setImmediate. Таким образом, микрозадача будет выполняться раньше, чем любая задача (потому что первая ставится в начало очереди, а вторая — в конец). Это же проясняет и ситуацию с промисами. Если имплементация промиса для вызова уже резовленного промиса «использует» setImmediate (ставит обработку в начало очереди), то мы получаем правильный порядок, если setTimeout(fn, 0) (ставит обработку в конец очереди), то будет некорректная последовательность в выводе.
Коммуницировать-то они могут, через storage event, но обработка такого события делается ровно так же, как и обработка любого другого, асинхронно (в отдельном фрейме). А синхронность проверить очень просто, нужно открыть две вкладки с одного домена и подвесить одну из них бесконечным циклом. Если, как говорится в статье, все вкладки с одного домена делят между собой один событийный цикл, то подвесятся они все (в чём я сомневаюсь).
Неожиданные реактивные выполнения команд, которые имеют побочные эффекты (например, удаляют какой-то файл на диске) — это последнее, что вы хотите от своей консоли.
Использование ~ вместо ^ … позволяет при восстановлении платформы получить версию у которой боляя поздняя патч версия
Не уловил сути этого изменения. Как раз циркумфлекс даёт более позднюю версию с учётом совместимости по мажорной версии, конечно. Тильда даёт версию в рамках минора, если указаны все три составляющие:

js > semver.toComparators('~4.1.0')
[ [ '>=4.1.0', '<4.2.0' ] ]
js > semver.toComparators('^4.1.0')
[ [ '>=4.1.0', '<5.0.0' ] ]
Мне нравится техника, которую я называю «прогрессивная детализация». Суть её в том, что на первых страницах расположено мало пунктов и они крупные (низкая детализация). Они даны с картинками и, зачастую, более крупным кеглем набрано название. Посетитель, которому нужно быстро или не кайф разбираться в тонкостях меню, скорее всего выберет блюдо с таких первых страниц. Анализируя цены можно также понять, что такие блюда имеют цену выше средней за «скорость». Посетитель, который готов разбираться что он будет кушать, пролистает дальше и получит более детализованный набор блюд (средняя детализация). В конце меню расположена подробная таблица по всем блюдам с калорийностями и прочим (самая высокая детализация).
А ещё лучше — и колесом мыши тоже.
Нужно такое же, но в терминале, с vi-управлением и ascii-кодами. :)
Возможно, backdrop следует перевести как «задний план», а background оставить за устоявшимся «фон». Не уверен, что «задний план» правильный перевод, но так как нужно подчеркнуть разницу между фоном-составной-частью-элемента и фоновым содержимым определённого элемента, деваться особо некуда.
Свойство border-width поддерживает ключевые значения
Было бы славно иметь поддержку ключевого значения для «волосной линии», каковая была во флеше. Что-то вроде самой тонкой линии на данном устройстве.
О чём и речь. Решить-то можно, но выглядит коряво до невозможности. Просто плохой дизайн закрепился и теперь считается технологическим решением. collapse намного логичней.
мы говорим, что он «Гриффер» (скорбящий)
Это неверно. Тут перепутан субъект и объект глагола. Смысл грифинга (griefing) не в том, что игрок «скорбит», а в том, что он «вызывает скорбь» у других игроков. То есть вызывает негативные эмоции у других игроков и тем самым портит впечатление от игры.
1
23 ...

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity