Неожиданно

Sep 15, 2016 01:53

Этот код на rust отрабатывает за 0.001 с.

fn main() {
let mut s:u64 = 0;
for x in 1..18446744073709551615 {
s+=x;
}
println!("{}",s);
}

Leave a comment

Comments 6

kodt_rsdn September 15 2016, 07:39:22 UTC
1мкс компилятору на оптимизацию арифметической прогрессии, 1нс программе на присваивание константы, 1мс на операции ввода-вывода.
Тоже мне рокет сьянс...
Или раст не был ранее замечен за математикой?

Reply

kkirsanov September 15 2016, 07:53:48 UTC
--Или раст не был ранее замечен за математикой?

Я вообще его только вчера смотреть начал.

Reply


metaclass September 15 2016, 09:37:14 UTC
Добавь отладочный вывод в цикл, а то не факт что он вообще отрабатывает.

Reply

kkirsanov September 15 2016, 09:45:36 UTC
Ну да, его оптимизатор схлопывает и оставляет константу.

Reply


awson December 1 2016, 08:38:36 UTC
Как я понимаю, это не собственно Rust, a LLVM так умеет. См. такую же историю про шланг.

Reply

kkirsanov December 1 2016, 08:51:00 UTC
Именно так

Reply


Leave a comment

Up