Формально, его, наверное, можно отнести к функциональным, но выглядит он не как реализация лямбда-исчисления, а как реализация подстановок формальных арифметик
Вообще-то, он выглядит как реализация нормальных алгорифмов Маркова, что эквивалентно лямбда-исчислению.
Я тоже про это подумал, но ведь если произведение можно получить несколькими способами, то отработать надо их все. (То есть нас должно интересовать распределение не произведения, а пары множителей).
На самом деле, сама идея правильная. Напомнило "Притчу" Дейкстры. Но, конечно, в такой подаче это не уровень Хабра. (Я, признаться, в начале статьи подумал, что очевидное решение – это как раз взять произведение и один из множителей, а подвох кроется где-то в неравномерности распределения произведений).
На уровне бизнес-требований разделение на функциональные и нефункциональные не столь критично, как на уровне требований к решению. Поэтому сложилась практика, говоря о функциональных/нефункциональных требованиях, неявно подразумевать именно требования к решению.
Хотя в рамках классификации уместнее, конечно, прописать это явно.
Позвольте, но ведь не обменивают, а именно вставляют. А это в случае индексированного доступа требует сдвига на элемент (что, по сути, и есть цепочка обменов соседних).
А как вы различаете две ситуации: "у клиента сменилась таймзона из-за перехода на зимнее время" и "у клиента сменилась таймзона из-за переезда в соседний часовой пояс"?
Вообще-то, он выглядит как реализация нормальных алгорифмов Маркова, что эквивалентно лямбда-исчислению.
Забыли спонсорскую ссылку вставить (шутка)
Ошибка игрока.
Согласен, с явными ветками лучше. (FizzBuzz, кстати, на мой взгляд, для этого и нужен: проверка на склонность к избыточной оптимизации).
Но всё-таки, без бинарных операций было бы, пожалуй, в рамках приемлемости.
То есть, получается, выпендрёжность здесь сводится к использованию
~n
вместо-n-1
Можно даже в качестве этой картинки использовать заставку самой игры. Будет ещё нагляднее.
Я тоже про это подумал, но ведь если произведение можно получить несколькими способами, то отработать надо их все. (То есть нас должно интересовать распределение не произведения, а пары множителей).
Истинно так, только, выходит, тильда там по ошибке, должен быть минус.
На самом деле, сама идея правильная. Напомнило "Притчу" Дейкстры. Но, конечно, в такой подаче это не уровень Хабра. (Я, признаться, в начале статьи подумал, что очевидное решение – это как раз взять произведение и один из множителей, а подвох кроется где-то в неравномерности распределения произведений).
Вероятно, дело в следующем.
На уровне бизнес-требований разделение на функциональные и нефункциональные не столь критично, как на уровне требований к решению. Поэтому сложилась практика, говоря о функциональных/нефункциональных требованиях, неявно подразумевать именно требования к решению.
Хотя в рамках классификации уместнее, конечно, прописать это явно.
Любопытно, никогда не думал раньше, что "вставку" можно рассматривать как "пузырёк" в обратную сторону.
(P.S. Если пузырёк не всплывает, а тонет, то это не пузырёк, а осадок :)
Позвольте, но ведь не обменивают, а именно вставляют. А это в случае индексированного доступа требует сдвига на элемент (что, по сути, и есть цепочка обменов соседних).
Сначала прочёл: "...перестанет существовать".
Я не придираюсь, мне действительно интересно, есть ли между ними какие-то различия
А чем второй пузырёк от сортировки вставкой отличается?
А как вы различаете две ситуации: "у клиента сменилась таймзона из-за перехода на зимнее время" и "у клиента сменилась таймзона из-за переезда в соседний часовой пояс"?
Не понял, что такого одиозного по ссылке.
Использовать машинный перевод (для публикации) и пользоваться машинным переводчиком (как инструментом в процессе) -- это всё же разные вещи.
"Был архетипичным примером" вполне удачный перевод, но если хочется ближе к оригиналу, то можно "был застрельщиком и олицетворением"
Отнюдь. Чтобы генерировать строки разной длины, надо просто варьировать параметр series_length.