> Какая им разница, на чём написана библиотека?Типы данных, удобство сборки, а при необходимости и патчинга, etc. Опенсорсом, понимаешь ли, пользуются потому что его можно взять и пропатчить.
Какие-нибудь питонисты привыкли что скоростные либы за них пишут какие-то более развитые существа, а им этот код понять и менять не дано, только склеивать кирпичи между собой. Но вот сишникам это не нравится, и опенсорсом они еще и реально пользуются.
> Ой, да ладно. Откуда ты знаешь? Ты уже предлагал им такую и
> они отказались? Поделись опытом, мне очень интересна их аргументация.
Как минимум я такой либой пользоваться не буду. Аргументация выше. Нах мне хипстокомпилер с встроенным менеджером пакетов и/или неизменяемая либа? Весь пойнт опенсорса в том что я могу взять и поменять что мне не нравится. А если тебе это все надо - вон redox os есть, еще и микроядро с той же аргументацией. Пользуйся наздоровье.
> Ну и отлично. Теперь можно, заглядывая в код glibc, не исследовать возможности
> оптимизации заново, а просто повторить то, что уже сделано, но без
> переполнений буферов, без целочисленных переполнений, и без прочего гумна,
Очередной волшебник который решит все проблемы, позволит не думать при написании программ, ога. На примере вебни и мозилабраузера видели уже. Но почему-то взламывают через эту самую вебню, а чтобы кого-то через переполнение буфера вообще огрели, со всеми ALSR и stack protector-ами - теоретически, так, наверное, бывает, но практически все атаки которые на слуху были совсем не через это. Вот рут через башскрипты по DHCP, инжекшн кода в спрут на яве, мозилла как сканер диска для АНБ - это да, помню. Только си там был вообще не у дел.
> которое отловить в C невозможно даже статическим анализатором.
Поэтому есть asan (и прочие ubsan, tsan, ...). Они не панацея, но переполнение буфера ловится неплохо. Очевидные ляпы с integer-ами нынче ловит компилер. А неочевидные... если чикерить результат каждой математической операции - ЭТО УБЬЕТ СКОРОСТЬ МАТЕМАТИКИ В РАЗЫ! Чтобы было быстро и эффективно, есть только 1 нормальный путь: железо должно кидать exception если математика переполнилась (и не делать ничего если все ок). И с буферами так же.
До интеля в новых процах даже дошло (MPX и проч). Почему остальные тупят столько десятилетий я не знаю.
> и поэтому придётся осознанно писать на rust'е код, который может переполнить буфер,
> используя для этого unsafe. Но в libc предостаточно кода, который может переполнить
> буфер не потому, что стандарт к этому принуждает, а просто так, по фану, и вот от
> этого фана libc вполне можно избавить.
Если си избавить от фана - это уже не си будет. Пользуйся своим rust-ом если тебе надо. Тогда и либы будешь вызывать безопасные, и переполнений не будет. Но глядя на вебню, и как мозиле 0day через JS вкатили, имхо кажется толку будет мало. Програмеры или научатся defensive thinking при работе с внешними данными или их будут нагревать.
> блестяще побеждать в битве с соломенным чучелом.
Да нет никакой особой битвы, есть немного defensive thinking и вера в себя вместо веры в рантайм и ЯП.
> Ай. Ещё один диванный специалист, с доморощенным проектом нового интернета,
Ну да. Однако ж дело говорит. Не нравится этот диванный, есть DJB. Он более фундаментально высказался, но идея похожая. Поэтому у него код безопасный даже на си, а у раздолбаев дыры и на питоне, и на рубях и на пыхе, и с js.
> который знает наилучшие способы решения всех проблем.
Он занимается тем же чем и ты, кстати :). Но его спич мне кажется более дельным чем твой. Знаешь почему? Больше коррелирует с наблюдаемой реальностью и вроде бы технически все шито-крыто.
> Мне до сих пор неясно, почему интернет, набитый специалистами такого класса,
> до сих пор ещё не стал идеальным с технической точки зрения.
Ээээ а можно у тебя это же самое спросить про либцу на rust? :D Твои слова очень хочется сказать ... тебе! Поразвелось тут верунов в магические пули вместо думания головой. Ты один из них.