Re:A Brutal Introduction to (Haskell) Arrows
by tpolecat on Wednesday June 16, 2010 @01:45AM
(#1434832)
I have heard some very smart developers admit that it took them years to wrap their brains around monads, and I suppose arrows are even more abstract ... I wonder how many people on earth honestly get this stuff well enough to use it day to day.
Re:A Brutal Introduction to (Haskell) Arrows
by viraptor on Wednesday June 16, 2010 @05:37AM
(#1435120)
Well enough to use it - many. Monads are not hard to use - take the Maybe for example - it just stops doing the operations if one of them results in Nothing. That's pretty much it - now you can use it.
Designing one and implementing for your own purposes - now that's a bit more tricky. But then, we're often consumers much more than producers. Even when programming you're a consumer as far as screen, cpu, memory, compiler, etc. etc. production is concerned. You know this stuff well enough to use it day to day, but if someone told you to explain the cpu in depth, most likely you'd have problems with it.
If you do Haskell all the time, it's not that hard actually. But then again - not many people write serious Haskell stuff as their day job.
Re:A Brutal Introduction to (Haskell) Arrows
by anonymousDan on Wednesday June 16, 2010 @06:08AM
(#1435149)
I recently decided to do a side project in Haskell. I had never used it before, and new nothing about monads. By the end of the project, I was comfortable using monads, although I still haven't had to come up with my own. So my suggestion is to just pick a reasonably sized project and implement it in Haskell. The best way to learn is by doing.
Designing one and implementing for your own purposes - now that's a bit more tricky. But then, we're often consumers much more than producers. Even when programming you're a consumer as far as screen, cpu, memory, compiler, etc. etc. production is concerned. You know this stuff well enough to use it day to day, but if someone told you to explain the cpu in depth, most likely you'd have problems with it.
If you do Haskell all the time, it's not that hard actually. But then again - not many people write serious Haskell stuff as their day job.
I think an article along the lines of, "100 incredibly boring Monads and 5 clever ones", could really help with understanding.