The OpenNET Project / Index page

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



"Выпуск языка программирования Rust 1.43"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Выпуск языка программирования Rust 1.43" +/
Сообщение от Orduemail (ok), 29-Апр-20, 08:47 
> после этого флаг CF уже был потерян.

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

> для того, чтобы флаг CF не потерялся, его придётся где-то записать в
> стек, или ещё куда, сразу после возврата, чтобы после вычисления выражения
> вытащить и таки проанализировать.

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

Но, в общем, я согласен, что тут бабка надвое сказала, стоит оно того или нет. Это надо испытывать на реальных приложениях, затачивать оптимизатор под эти реальные приложения, приспосабливать приложения к оптимизатору, и потом смотреть что получилось. Сложно, долго, и нафиг нужно.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск языка программирования Rust 1.43, opennews, 23-Апр-20, 23:37  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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