Sci-Fi мир строился по аналогии с реальным: богачи живут в летающих городах, пока остальным приходится добывать минералы из-под земли, чтобы Цитадель оставалась в воздухе
Да вот этой самой, которая IterableOnce. В части Analysis.
Есть немалая категория кода, которая ожидает, что из Iterable можно получить сколько угодно итераторов. Сам пропозал называет один, я назвал ещё один. Пока все реализации ограничены сравнительно редким DirectoryStream, проблема небольшая. Если сюда же внезапно добавить крайне распространённые BaseStream сотоварищи, частота вырастет многократно, причём, будет нарушен principle of least astonishment (мало вам Collection::add и Collections.unmodifiable*, черти?). С Iterable, к сожалению, сложилась такая ситуация, когда параллельно официально закреплённым гарантиям есть неформальное соглашение, и именно с неформальной частью люди сталкиваются намного чаще.
Я ведь уже говорил, почему не сработает (и не только я, даже в вашей ссылке есть). Iterable — это фабрика независимых друг от друга итераторов. В отличии от Stream. Введение IterableOnce extends Iterable сломает ожидания в немалом количестве кода — компилироваться не прекратит, но работать без исключений уже не сможет.
Например, образцово показательно окажется сломанным com.google.common.collect.Iterables.cycle — а библиотека вовсе не маленькая и не редкая. По второй ссылке видно, что нависнет проблема с библиотекой AssertJ. Подобная же проблема будет с Hamcrest. И так далее и тому подобное.
И вся эта возня костылями по песку чтобы получить break и continue? Что такого они могут чего не сумеют .filter() и .takeWhile().count()? Пример из пропозала вообще решается через teeingCollector — и, прошу заметить, без введения неопределённости в поведение интерфейса из единственного метода.
У них теперь умные микроволновки и стиральные машины. Недалёк тот день, когда выйдет статья "Samsung удалённо блокирует свои "серые" стиральные машины в Росии".
Поддержка for:each для Stream — это всё-таки не то же самое, что "унаследовать Stream от Itrable". Кроме того, даже по ссылке как раз ничего не говорится про прямое наследование, потому что прямое наследование не сработает — они пытаются выделить отдельный подтип, который уже можно применить и внутри конструкции, и может быть даже утащить под неё же DirectoryStream.
Кстати, когда уже наконец Stream отнаследуют от Iterable?
Никогда. Iterable (за довольно редким исключением) можно обойти по итератору больше одного раза. Со Stream такие фокусы не пройдут. Следовательно, то, что у обоих есть метод iterator() — это скорее совпадение.
Если бы ассортимент таких торговых сетей вообще позволял делать какой-то анализ, я ещё бы понял. У большинства, что я вижу, вроде и полки заполнены, но по факту предложение с минимально возможным разнообразием. Ну и какую аналитику они получат, если я весь такой с картой зашёл в магазин, не нашёл на полках ничего что хотел купить, и с досады купил одну булку хлеба?
Скорее не так: возможно, внутренняя кухня сбора и торговли персональными данными клиентов у Самсунга построена так, что регион привязки для персональных данных берётся из региона прошивки или, например, серийного номера (который уже просто так не поменять). Если так, то каждый "серый" телевизор портит им бигдату, снижая её ценность за счёт возмущений. А это уже прямой убыток головному офису, а не какому-то там заводу по сборке (хотя, может, и ему тоже, но вряд ли "голову" волнуют проблемы индейцев).
Это был вопрос, по сути, с цитатой из исходной статьи.
Предположим, TreadRipper — не для серверов. Хорошо. A у Epyc есть недостающие "специфические корпоративные функции"?
Каких именно "специфических корпоративных функций" нет в ThreadRipper, и не окажется ли "вдруг", что именно из-за этих функций доля синих в корпоративном сегменте останется неизменной?
Ещё появилось интересное явление: по некому программному продукту StackOverflow является официальным и единственным каналом поддержки. Да, кому-то платят деньги, чтобы они отвечали на StackOverflow по заданному списку тегов.
Нет, недополученная прибыль — это ментальная гимнастика с подменой понятий, неправомерно приравнивающая ценность непиратской и пиратской копий, в то время как реальная ситуация намного сложнее, и лежит скорее в плоскости удобства доступа, чем чего-то ещё.
с разными частотными характеристиками, помехоустойчивостью и электропроводностью
Ага, а микроскопы обладают бОльшим весом, чем средний домашний молоток, следовательно, лучше подходят для забивания гвоздей. Будет крайне глупо переплачивать очень ощутимую долю цены за "хороший кабель" и потом использовать его в лучшем случае на 20% его возможностей.
Где-то в настройках стима есть галочка для включения "экспериментального" режима поддержки для игр. Я именно так без каких-то проблем играл в Noita когда она только вышла, хотя официально поддержки Linux нет.
Так что как это выглядит и как это на самом деле будет работать — не одно и то же. Советую тоже проверить на практике. Ну и, как уже сказали, дела всё время становятся лучше.
В том, что, в отличие от прибыли копираста, ваша заработная плата фиксируется договором с работодателем. И работодатель будет иметь проблемы с регулятором при удержании части выплат даже если вы сами полностью согласны, что "не заслужили" полной суммы.
или HDMI и DP разных версий, выглядящие совершенно одинаково
Одно дело разные версии кабеля, предназначенного для одного и того же, которые выглядят одинаково (и работают, по сути, тоже одинаково) — и совсем другое когда все кабели и разъёмы выглядят одинаково, но предназначены при этом совсем для разных вещей. Для USB A уже есть "решение" в виде цветовой кодировки в зависимости от версии разъёма (правда, в зависимости от производителя кодировка может отличаться, и чёрный цвет далеко не всегда означает версию меньше 2.0), а вот для крошечных разъёмов Type C такого решения нет.
есть разъём USB-C, распиновка единая для всех
Я предпочту чтобы вместо one-size-fits-all, требующего сложного контроллера, у меня было бы несколько специализированных разъёмов, хорошо исполняющих именно свою работу, для которой они проектировались. По крайней мере там, где это позволяют размеры устройства. И нет, я не вижу ничего плохого в нескольких специализированных разъёмах даже на смартфонах, если это позволит сделать внутреннюю конструкцию связки контроллера и протокола проще и надёжнее. Размеры современных лопат давно это позволяют.
А что, у копирастов есть договор с пользователями, согласно которому пользователи обязуются купить у них кина на N денег? Плохая аналогия — это как дупло.
Из-за гораздо меньшей плотности энергии на грамм массы по сравнению с керосином, к примеру.
Сильно сомневаюсь, что кто-то будет делать салоны так, как это показано на концептах.
Ну да, всё прямо как в реальном мире (нет).
Да вот этой самой, которая IterableOnce. В части Analysis.
Есть немалая категория кода, которая ожидает, что из Iterable можно получить сколько угодно итераторов. Сам пропозал называет один, я назвал ещё один. Пока все реализации ограничены сравнительно редким
DirectoryStream, проблема небольшая. Если сюда же внезапно добавить крайне распространённыеBaseStreamсотоварищи, частота вырастет многократно, причём, будет нарушен principle of least astonishment (мало вамCollection::addиCollections.unmodifiable*, черти?). СIterable, к сожалению, сложилась такая ситуация, когда параллельно официально закреплённым гарантиям есть неформальное соглашение, и именно с неформальной частью люди сталкиваются намного чаще.Я ведь уже говорил, почему не сработает (и не только я, даже в вашей ссылке есть).
Iterable— это фабрика независимых друг от друга итераторов. В отличии от Stream. ВведениеIterableOnce extends Iterableсломает ожидания в немалом количестве кода — компилироваться не прекратит, но работать без исключений уже не сможет.Например, образцово показательно окажется сломанным
com.google.common.collect.Iterables.cycle— а библиотека вовсе не маленькая и не редкая. По второй ссылке видно, что нависнет проблема с библиотекой AssertJ. Подобная же проблема будет с Hamcrest. И так далее и тому подобное.И вся эта возня костылями по песку чтобы получить
breakиcontinue? Что такого они могут чего не сумеют.filter()и.takeWhile().count()? Пример из пропозала вообще решается черезteeingCollector— и, прошу заметить, без введения неопределённости в поведение интерфейса из единственного метода.У них теперь умные микроволновки и стиральные машины. Недалёк тот день, когда выйдет статья "Samsung удалённо блокирует свои "серые" стиральные машины в Росии".
Поддержка
for:eachдляStream— это всё-таки не то же самое, что "унаследоватьStreamотItrable". Кроме того, даже по ссылке как раз ничего не говорится про прямое наследование, потому что прямое наследование не сработает — они пытаются выделить отдельный подтип, который уже можно применить и внутри конструкции, и может быть даже утащить под неё жеDirectoryStream.Никогда.
Iterable(за довольно редким исключением) можно обойти по итератору больше одного раза. СоStreamтакие фокусы не пройдут. Следовательно, то, что у обоих есть методiterator()— это скорее совпадение.Но в принципе, можно так:
Но всё равно нужно помнить, что это больше хак, чем фича.
Нет, дело было именно так. А закупаюсь я в итоге в другом магазине, и там у меня нет никаких карт.
Если бы ассортимент таких торговых сетей вообще позволял делать какой-то анализ, я ещё бы понял. У большинства, что я вижу, вроде и полки заполнены, но по факту предложение с минимально возможным разнообразием. Ну и какую аналитику они получат, если я весь такой с картой зашёл в магазин, не нашёл на полках ничего что хотел купить, и с досады купил одну булку хлеба?
Скорее не так: возможно, внутренняя кухня сбора и торговли персональными данными клиентов у Самсунга построена так, что регион привязки для персональных данных берётся из региона прошивки или, например, серийного номера (который уже просто так не поменять). Если так, то каждый "серый" телевизор портит им бигдату, снижая её ценность за счёт возмущений. А это уже прямой убыток головному офису, а не какому-то там заводу по сборке (хотя, может, и ему тоже, но вряд ли "голову" волнуют проблемы индейцев).
Это был вопрос, по сути, с цитатой из исходной статьи.
Предположим, TreadRipper — не для серверов. Хорошо. A у Epyc есть недостающие "специфические корпоративные функции"?
Каких именно "специфических корпоративных функций" нет в ThreadRipper, и не окажется ли "вдруг", что именно из-за этих функций доля синих в корпоративном сегменте останется неизменной?
Ещё появилось интересное явление: по некому программному продукту StackOverflow является официальным и единственным каналом поддержки. Да, кому-то платят деньги, чтобы они отвечали на StackOverflow по заданному списку тегов.
Нет, недополученная прибыль — это ментальная гимнастика с подменой понятий, неправомерно приравнивающая ценность непиратской и пиратской копий, в то время как реальная ситуация намного сложнее, и лежит скорее в плоскости удобства доступа, чем чего-то ещё.
Ага, а микроскопы обладают бОльшим весом, чем средний домашний молоток, следовательно, лучше подходят для забивания гвоздей. Будет крайне глупо переплачивать очень ощутимую долю цены за "хороший кабель" и потом использовать его в лучшем случае на 20% его возможностей.
Где-то в настройках стима есть галочка для включения "экспериментального" режима поддержки для игр. Я именно так без каких-то проблем играл в Noita когда она только вышла, хотя официально поддержки Linux нет.
Так что как это выглядит и как это на самом деле будет работать — не одно и то же. Советую тоже проверить на практике. Ну и, как уже сказали, дела всё время становятся лучше.
В том, что, в отличие от прибыли копираста, ваша заработная плата фиксируется договором с работодателем. И работодатель будет иметь проблемы с регулятором при удержании части выплат даже если вы сами полностью согласны, что "не заслужили" полной суммы.
Одно дело разные версии кабеля, предназначенного для одного и того же, которые выглядят одинаково (и работают, по сути, тоже одинаково) — и совсем другое когда все кабели и разъёмы выглядят одинаково, но предназначены при этом совсем для разных вещей. Для USB A уже есть "решение" в виде цветовой кодировки в зависимости от версии разъёма (правда, в зависимости от производителя кодировка может отличаться, и чёрный цвет далеко не всегда означает версию меньше 2.0), а вот для крошечных разъёмов Type C такого решения нет.
Я предпочту чтобы вместо one-size-fits-all, требующего сложного контроллера, у меня было бы несколько специализированных разъёмов, хорошо исполняющих именно свою работу, для которой они проектировались. По крайней мере там, где это позволяют размеры устройства. И нет, я не вижу ничего плохого в нескольких специализированных разъёмах даже на смартфонах, если это позволит сделать внутреннюю конструкцию связки контроллера и протокола проще и надёжнее. Размеры современных лопат давно это позволяют.
А что, у копирастов есть договор с пользователями, согласно которому пользователи обязуются купить у них кина на N денег? Плохая аналогия — это как дупло.