Здравствуйте, Khimik, Вы писали:
K>По-моему кто-то давно уже говорил о Delphi, что если вам надо быстрый код — оптимизируйте алгоритм, остальное компилятор сделает сам.
delphi так себе оптимизировал код.
K>Для оптимизации кода, как и вообще для написания серьёзного кода, желательно разбить код на фрагменты, "ортогональные" друг к другу, работающие независимо.
Тут очень широкая тема. И так просто она не решается. Так как процессоры уже давно
спекулятивные, память очень
медленная, есть куча
ухищрений что бы это нивилировать, множество вычислений могут быть выполнены на gpgpu с десятками тысяч ядер. Поэтому обычно не заморачиваются а используют уже оптимизированный код под определённые типовые задачи.
K>Чтобы следовать этому принципу, приходится делать на первый взгляд не очень красивые вещи.
Оптимизированный код обычно страшный и тяжело поддерживаемый. Поэтому это сваливают
на компиляторы
K>Например, если мне надо сделать быструю сортировку, я не вставляю её алгоритм в то место где она нужна, а делаю примерно так:
если вам приходится так делать посмотрите другие языки где так не надо делать, например
fortran