LINUX.ORG.RU

История изменений

Исправление 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 рулят.