I have a limited sort of understanding of what they're for and why, but they're still kind of intimidating. I found this (State in Haskell, John Launchbury, Simon L. Peyton Jones) to be a useful paper on understanding some of the less obvious ways of using mutable state within haskell.
I learned ocaml before I learned haskell, and it helped a lot to be able to try out functional programming without being forced into one paradigm. Now that I know both, I think programming in haskell is more interesting and fun. I might be able to program more quickly in ocaml (since I can cut corners whenever I want with mutable data structures), but I think haskell has cleaner, more consistent syntax and is a lot farther along on the road to decent multicore performance. As far as uniprocessor performance goes (comparing ocamlopt vs ghc), I think ocaml might have a slight edge but they're pretty close.
Discussion (6)
I have a limited sort of understanding of what they're for and why, but they're still kind of intimidating. I found this (State in Haskell, John Launchbury, Simon L. Peyton Jones) to be a useful paper on understanding some of the less obvious ways of using mutable state within haskell.
I don't fear them, because I have little reason to. Haskell is a bit too hardcore for me. I like my functional programming more like ML, or O'Caml.
That's what I used to say, but I felt it was time to admit that I was deceiving myself.
D'A
Functional programming in general scares me. I just don't grok it. One of these days I need to sit down and learn Lisp or Scheme or something….
nomad monads with big gonads. now that scares.
@wyrframe:
I learned ocaml before I learned haskell, and it helped a lot to be able to try out functional programming without being forced into one paradigm. Now that I know both, I think programming in haskell is more interesting and fun. I might be able to program more quickly in ocaml (since I can cut corners whenever I want with mutable data structures), but I think haskell has cleaner, more consistent syntax and is a lot farther along on the road to decent multicore performance. As far as uniprocessor performance goes (comparing ocamlopt vs ghc), I think ocaml might have a slight edge but they're pretty close.