| int-e | @src and |
| lambdabot | and = foldr (&&) True |
| Weremanatee | oh, very nice |
| davidL | ...where is hpaste |
| UUStudent | int-e: are you saying..nested do expressions? |
| int-e | (the counterpart for 'all' is 'any') |
| davidL | @seen hpaste |
| lambdabot | I saw hpaste leaving #haskell 3h 59m 15s ago, and . |
| davidL | I annotated the paste with the error int-e |
| Weremanatee | is there a zipWithTail function or similar in the prelude? |
| int-e | davidL: ah. array is pure, so you need a return |
| Weremanatee | seems like a common thing to do, zip x (tail x) zipwith rather |
| int-e | davidL: because if you want to use nums', adjMatrix must be in IO - hence adjMatrix :: IO (Array ...) |
| sorear | davidL: He disappeared in a netsplit. glguy: ping |
| davidL | so I should put a return statement in the lambda? |
| int-e | davidL: adjMatrix :: [[Int]] -> Array ... is an option though, lifting the IO one level up as I already mentioned. davidL: yes. return $ array ... instead of array ... davidL: or return (array ...) if you dislike $. |
| davidL | there's multiple levels of IO? |
| int-e | UUStudent: yes, you can nest dos > do do do do do [] |
| lambdabot | [] |
| dons | hehe cute. |
| int-e | @type do undefined |
| lambdabot | forall (t :: * -> *) t1. t t1 |
| int-e | ouch. |
| sorear | @type do ?_ |
| lambdabot | forall (t :: * -> *) t1. (?_::t t1) => t t1 |
| int-e | I expected Monad t => t a |
| davidL | wtf... Expected kind `?', but `Array' has kind `* -> * -> *' |
| sorear | davidL: You can't put Array on the left of a function arrow. Array (Int,Int) Int yes Probable cause: you didn't give Array enough arguments |
| action | sorear can't figure out what |
| sorear | can't figure out what is so obscure about that error |
| davidL | forgot the last int, but of course, the infamous [[Int]] does not match IO [[Int]] comes back to haunt me |
| int-e | davidL: I gave incomplete type signatures. |