I am a little surprised by the "shortcomings" of Haskell mentioned in the thread.
I was under the impression that Haskell was closest to Nirvana on the usefulness vs safety graph. In the paper "Why FP matters" - Laziness is stated as one of the two key features of FP that allows conceptual modularity! If I understand right, Laziness is not a first class stuff in OCaml - is that not right? If I understand correctly - Not allowing side-effects allow for equational reasoning - which in turn allows you to "reason" about the program better. If I understand right - OCaml allows side effects right? Jeff, could you please expand on the tail recursion bit - what do you mean when you say, in OCaml, "one has to write tail recursively in OCaml"? Please note, I am still a Haskell (FP) learner - My questions above are only meant for me to understand things better. Regards, Kashyap On Sat, Apr 17, 2010 at 7:12 AM, jeff p <mutj...@gmail.com> wrote: > Hello, > > One major thing I haven't seen explicitly mentioned yet in this thread > is tail recursion. You have to write tail recursively in OCaml (or any > strict language) or you will blow the stack. While tail recursion is > often wrong (in terms of efficiency) in Haskell, it is always right in > OCaml. > > -Jeff > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > -- Regards, Kashyap
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe