The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Первый официальный выпуск rav1e, кодировщика AV1 на языке Ru..."
Отправлено Ordu, 11-Ноя-19 20:37 
> Для начала скажу - не тыкай другим, хамя.

Скажи ещё раз, мне нравится эротичный звук твоего голоса.

>> "эти проверки бесплатны в рантайме, дополнительная сложность выражается числами неотличимыми от статистической погрешности"
> Да, ну - потому наверное в Си[++] её и не делают...

Что значит не делают? Делают. Загляни в код vector. Её не делают для родных массивов языка, да и то только потому, что эти родные массивы -- тяжкое наследие C, который до конца так и не научился различать массивы и указатели. И какой дурак в C++ будет использовать эти встроенные "массивы"? Они не массивы, а указатели, и их разадресация -- это чистой воды арифметика с указателями, только вместо оператора + там используется оператор [], но на этом различия и заканчиваются.

> в GCC сделав - выкинули в последующих версиях,

Интересно почему? Навскидку я предположу, что в C невозможно осмысленно проверять индексы на выход за границы, потому что границы эти есть только в голове у программиста. Ну, скажем, если я пишу person->name[-2], то это вполне валидный код в C и C++. И с точки зрения C и C++ тут вовсе не факт, что есть выход за границы массива. И самое что интересное, в C вполне можно наткнуться на подобное. То есть проверки индекса на выход за границы -- это отказ от обратной совместимости с кодом.

> в Delphi же
> выключали всегда в не DEBUG, кто нт тот сознательно доп.тормозил).

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

Техники оптимизации этих проверок, типа выноса их за пределы циклов, были известны ещё в 70-х. И уже тогда, на всяких там паскалях показывали, что при использовании этих техник, проверок на выход за границы всё равно остаётся больше, чем требуется при ручном их расставлении, но уже тогда всё было больше похоже на статистические погрешности, нежели на что-то существенное.

Если тебе интересно почему ты возражаешь против автоматических проверок, то я тебе расскажу остаток истории. Тогда появился C, тупо инженерная поделка людей, кто писал язык не заботясь о его качестве. И хрен бы с ним, но на нём написали Unix. Этот Unix в силу того, что на Bell Labs распространялись антимонопольные ограничения, не мог быть коммерциализирован в тот момент, поэтому Bell Labs стала раздавать его в виде сорцов. Unix тогда был хипстерством: какой дурак будет писать ОС на языке высокого уровня? Но за счёт бесплатности и портабельности он распространился по ВУЗам. Потом когда у Bell Labs появилась возможность сделать из Unix прибыльный проект, было уже поздно, Unix был везде. И Unix вытащил C в топ и сделал из него lingua franca программирования.

И хрен бы с ним, но нарождающиеся личинки программистов, видя схожесть всяких там Pascal'ей и C, чувствовали свою ущербность, вне зависимости от того, что они выбрали -- Pascal или C. Особенно когда они входили в тот возраст, где самоутверждение является главным мотивом. И естественно они начинали изобретать аргументы в пользу того или иного языка. И изобретали они их очень просто: надо взять любое отличие языка, и сказать что язык выбранный мною по этому свойству лучше. Таким образом зародился холивар C vs Pascal. Сегодня это в общем уже дохлый и никому не интересный холивар, но эхо от него долетает до нас в виде, например, твоих заявлений о том, что автоматическая проверка на выход за границы -- это ужасно медленно.

> И я сказал - и другие случаи, всякие как раз фичи, раста.
> Они вовсе не бесплатны, тем более при типичном активном их использовании.

Какие случаи? Ты о чём, детка?

>> "возьми и напиши полноценно-оптимизированный вариант на C(+SIMD+Asm)"
> - Потратить кучу времени(чуть менее чем ~пол жизни) - только на изучние
> их кодека(и без оптимизаций)? А, что ещё?!...

Да, то есть ты понял, что только для того, чтобы доказывать превосходство языка писать кодек -- это не очень вдохновляющая идея? Если она не вдохновляющая для тебя, то может она и для других не вдохновляющая, а?

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру