- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
t = 40000 -- количество итераций, чтобы выполнялось примерно 1 миллисекунду
-- экспериментальным путем определено, что для ideone'вских машин это значение ~40000
sleep x = (apply (t*x) id x) `seq`
("I've waited ~" ++ show x ++ " milliseconds to tell this: 'pipisiunchik'.")
-- apply применяет ф-цию f к x n раз
apply 0 _ !x = x
apply !n !f !x = apply (n - 1) f (f x)
main = putStrLn $ sleep 1000
Или это вынужденно на практике используется?
Нет конечно, это просто мне делать нечего было.
Мне винда нравится, кстати. Иногда я читаю osronline и тку