Ринат Велиахмедов: Я, собственно, в ответе так и написал, что на C++ в принципе возможно писать, ничем не уступающий в производительности, код, при этом компактный, красивый и элегантный. Но это требует от кодера гораздо больше чем просто знания синтаксиса языка и API библиотек. Это почти искусство, это может придти только с годами опыта.
Ринат Велиахмедов: Просто на C++ есть куча библиотек (boost и прочие) с очень удобными высокоуровневыми конструкциями. Они настолько удобные, что вызывают моментальное привыкание. Не то чтобы эти высокоуровневые конструкции сами по себе тормозили, но все зависит от их использования. Например, в глубине как-го нибудь нагруженного цикла кодер на C постарается обойтись простыми операциями над примитивными типами и избежать вызовов любых неинлайновых функций, а кодер на C++ может поддаться соблазну (например) вместо линейного массива использовать какой-нибудь связанный список (ведь так удобно же), не задумываясь о том, сколько там под капотом совершается вызовов, инлайновые они или нет. Все это не имело бы значения в каком-нибудь не нагруженном блоке кода, но в глубине цикла, на который приходится основная вычислительная нагрузка, такое удобство может стоить заметной разницы в быстродействии.
Например с целью лучшей защиты от пиратства. Браузерные игры наиболее тесто связаны со своим сервером. А вынос части логики на сервер - единственная надежная защита от пиратирования.
Алексей П: Я имею в виду веб-бекенд и на этом примере пытаюсь показать, что красота архитектуры языка (или любой технологии) слабо связана с его популярностью в реальной жизни.
Что касается js, то за него стоят, во-первых, разработчики браузеров, которые слишком много вложились в свои js-движки, во-вторых, все, гиганты интернет-индустрии, которые сильно обросли js-кодом, и штатом js-кодеров, и кому невыгодно перепрыгивать на другие технологии и переобучать/менять свои кадры.
А права на торговый знак JavaScript изначально принадлежали Netscape, впоследствии поглощенной AOL. Oracle, насколько я помню, ко всей этой истории отношения не имела.
Алексей П: Когда это плохая архитектура языка (или любой технологии) мешала маркетологам активно его продвигать? Посмотрите, например, на бекенд - кто у нас там живее всех живых?
kstyle: Задача на прогнозирование временных рядов - типичная задача на регрессию. Даже если нейронные сети прикрутить к решению данной задачи, это будет не самый оптимальный метод решения. Нейронные сети в лучшем случае дадут равный по точности результат. Но на больших объемах данных нейронные сети (достаточно сложно устроенные для сопоставимой с регрессией точности предсказания) проигрывают регрессии в скорости обучения.
Никита Воронцов: Да, от аппаратной архитектуры зависит. На x86 всегда существовали инструкции shl/shr, которые допускают второй операнд в регистре (т.е. переменный). В стандарте языка C ничего не сказано про то, что второй операнд должен быть константой, но указано, что реализация операции сдвига аппаратно зависима (т.е. поведение может быть любое, вплоть до того, что эта операция может быть полностью недоступна на какой-то платформе).
Я не могу вспомнить языка, в котором бы сдвиг работал только с константами.
По крайней мере, в C и C++ у операции сдвига оба операнда могут быть переменными и произвольными выражениями.
Меня тоже давно интересует этот вопрос. Сама по себе идея очень привлекательна в плане быстродействия межпроцессорных коммуникаций. Но я не знаю ни одной известной реализации такой возможности. Как будто что-то препятствует этому технически. Вместо этого для коммуникаций типично используют пайпы и сокеты, а для ускорения нагородили sendfile(), splice() и прочие zero-copy механизмы.
unfapable: Найти в /etc/apache2/ports.conf соответствующую строку и заменить адрес на 127.0.0.1. Это блокирует только внешние запросы к вашему веб-серверу, то есть никто из Сети не сможет подключиться к нему, используя IP в качестве адреса.
Это никак не влияет на способность серверных скриптов (PHP или что у вас там стоит) делать внешние запросы в Сеть.
AJAX - не имеет отношения к веб-серверу вообще, это исключительно функция браузера. Если сохранить HTML-страницу вместе с JS-скриптами на диск (допустим, все относительные пути легли правильно), а потом открыть в браузере с диска file:///bla_bla_bla.html, то все JS-скрипты будут также исполнятся и AJAX-запросы будут работать. И все это безо всякого Apache на любой машине, в любом браузере, хоть в телефоне.
Василий: Я не силен в теории проектирования БП. Но те БП, с которыми мне приходилось работать имели полностью свободный (не привязанный ни к чему) выход постояники, так что можно было закинуть на корпус любой (один!) из проводников и получить хоть +12В от корпуса, хоть -12В в другом варианте подключения.
А вас не смущает, что при добавлении еще восьми нулей к цифре количества итераций цикла время исполнения вашего кода нисколько не меняется (вместо того чтобы зависнуть на годы) ? rextester.com/CGEIT60937