История изменений
Исправление tailgunner, (текущая версия) :
Мне нужно гарантированно обернуть весь unsafe так, чтобы далее его не трогать
Это называется «проектирование программ» и является твоей личной ответственностью.
Я не считаю себя идеальным программистом, который никогда не совершает ошибок.
Неважно, кем ты себя считаешь. Построение слоев абстракции - это ответственность программиста или команды программистов, работающих над проектом. Не сумел(и) - сам(и) виноват(ы).
Ты когда на Си последний раз писал?
Сегодня. Сейчас
А на чем-то повыше уровнем?
Имею ввиду, что должна быть возможность навертеть safe над unsafe с уверенностью.
Прекрасно. И что тебе мешает? Контрольный вопрос: что, по-твоему, означает «unsafe» в Rust?
Memory safety там нет
Где «там»?
Код ядра ведь видел?
Да. Я тоже пишу модули ядра.
А остальное там, в больше случаев, не к месту совсем
Везет тебе - дженерики не нужны. Наверное, и list.h не используешь, и rbtree.h?
[xx@yy drivers]$ grep -E -r "/(list|rbtree).h" kernel drivers fs | wc -l
822
Простота наше все.
Правда? А я думал, Coq и Haskell рулят.
Исправление tailgunner, :
Мне нужно гарантированно обернуть весь unsafe так, чтобы далее его не трогать
Это называется «проектирование программ» и является твоей личной ответственностью.
Я не считаю себя идеальным программистом, который никогда не совершает ошибок.
Неважно, кем ты себя считаешь. Построение слоев абстракции - это отвественность программиста или команды программистов, работающих над проектом. Не сумел(и) - сам(и) виноват(ы).
Ты когда на Си последний раз писал?
Сегодня. Сейчас
А на чем-то повыше уровнем?
Имею ввиду, что должна быть возможность навертеть safe над unsafe с уверенностью.
Прекрасно. И что тебе мешает? Контрольный вопрос: что, по-твоему, означает «unsafe» в Rust?
Memory safety там нет
Где «там»?
Код ядра ведь видел?
Да. Я тоже пишу модули ядра.
А остальное там, в больше случаев, не к месту совсем
Везет тебе - дженерики не нужны. Наверное, и list.h не используешь, и rbtree.h?
[xx@yy drivers]$ grep -E -r "/(list|rbtree).h" kernel drivers fs | wc -l
822
Простота наше все.
Правда? А я думал, Coq и Haskell рулят.
Исходная версия tailgunner, :
Мне нужно гарантированно обернуть весь unsafe так, чтобы далее его не трогать
Это называется «проектирование программ» и является твоей личной ответственностью.
Я не считаю себя идеальным программистом, который никогда не совершает ошибок.
Неважно, кем ты себя считаешь. Построение слоев абстракции - это отвественность программиста или команды программистов, работающих над проектом. Не сумел(и) - их проблемы.
Ты когда на Си последний раз писал?
Сегодня. Сейчас
А на чем-то повыше уровнем?
Имею ввиду, что должна быть возможность навертеть safe над unsafe с уверенностью.
Прекрасно. И что тебе мешает? Контрольный вопрос: что, по-твоему, означает «unsafe» в Rust?
Memory safety там нет
Где «там»?
Код ядра ведь видел?
Да. Я тоже пишу модули ядра.
А остальное там, в больше случаев, не к месту совсем
Везет тебе - дженерики не нужны. Наверное, и list.h не используешь, и rbtree.h?
[xx@yy drivers]$ grep -E -r "/(list|rbtree).h" kernel drivers fs | wc -l
822
Простота наше все.
Правда? А я думал, Coq и Haskell рулят.