LINUX.ORG.RU

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

Исправление tailgunner, (текущая версия) :

Есть давно уже, года с 2011, кажется: http://dlang.org/phobos/std_parallelism.html

Как и ожидалось - без всякой проверки на алиасинг. См. второй абзац Data-race freedom в статье.

Дело в том, что memory safety - это ЧАСТЬ ПРИКЛАДНОЙ ЗАДАЧИ (именно так, капсом).

Это зависит от того, как сформулировать.

Не зависит. Совсем. Потому что при порче памяти ты тупо получаешь некорректные результаты.

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

А еще твои задачи позволяют тебе разменять «недумание о сохранности» на оверхед сборки мусора. Но Rust делался в первую очередь для задач, где такой размен невозможен, а во вторую - для повышения порога, за которым такой размен выгоден.

Но только иногда нет смысла изобретать новые велосипеды, если уже два есть.

О каких велосипедах речь? До Rust уже были не-экспериментальные языки, которые обеспечивали memory safety без GC?

Исходная версия tailgunner, :

Есть давно уже, года с 2011, кажется: http://dlang.org/phobos/std_parallelism.html

Как и ожидалось - без всякой проверки на алиасинг. См. второй абзац Data-race freedom в статье.

Дело в том, что memory safety - это ЧАСТЬ ПРИКЛАДНОЙ ЗАДАЧИ (именно так, капсом).

Это зависит от того, как сформулировать.

Не зависит. Совсем. Потому что при порче памяти ты тупо получаешь некорректные результаты.

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

А еще твои задачи позволяют тебе разменять «недумание о сохранности» на оверхед сборки мусора. Но Rust делался в первую для задач, где такой размен невозможен, а во вторую - для повышения порога, за которым такой размен выгоден.

Но только иногда нет смысла изобретать новые велосипеды, если уже два есть.

О каких велосипедах речь? До Rust уже были не-экспериментальные языки, которые обеспечивали memory safety без GC?