- 1
- 2
- 3
- 4
- 5
- 6
happy_numbers = [ tos (a,b,c,d,e,f a b c d e) | a <- [0..9], b <- [0..9], c <- [0..9], d <- [0..9], e <- [0..9], f a b c d e <= 9, f a b c d e >= 0 ]
where
tos (a,b,c,d,e,f) = show a ++ show b ++ show c ++ show d ++ show e ++ show f
f a b c d e = a + b + c - d - e
main = mapM print $ happy_numbers
А как это работает над списками? Аппликативые функторы в монадах?
Раскури устройство списковой монады, если интересно узнать как это работает.
http://ideone.com/QTh4a0
Надмозг детектед.
P.S. А ну да, там еще функторы в этом пакете.
http://hackage.haskell.org/packages/archive/base/latest/doc/html/Control-Monad.html
Ты смешал две монады и ожидаешь, что это будет работать.
...а взболтать забыл.
Монады - это модель грязного мира на чистом языке.
Это как пластиковая какашка. Она только выглядит как побочный эффект.
1. Ух ты! Хоть что то хаскелевое на говнокоде.
2. Это же хаскель... Ничего не понимаю, значит говно - плюсану.
2. Отличный повод расширить кругозор
http://govnokod.reformal.ru/proj/?ia=376309
UPD: Frag, http://www.youtube.com/watch?v=0jYdu2u8gAU
Для всех языков использую Sublime Text 2. Рекомендую попробовать.
Рекомендую уже всё-таки попробовать.
А так редактор неплохой, довольно шустрый, правда, мутные глюки портят всё впечатление. Ну и мне почему-то кажется, что динамические языки лучше подходят в качестве языка расширения для интерактивных программ вроде текстового редактора.