On 20/08/2012, at 5:35 PM, Dobes Vandermeer wrote: > > I don't mind the compiler deciding whether the operation is eager or lazy, I > just want to get the same result every time.
"I don't mind if pointers can be NULL or even uninitialised as long as the compiler doesn't let me dereference them" Fine. So we just don't allow NULL. Its useful but the compiler cannot make the guarantee any other way. So NULL is out. And Dobes gives up on Felix and goes back to C because he needs NULL. In Haskell everything is lazy, unless the compiler can prove the function is strict, in which case eager evaluation can be used, and Haskell can get rid of a closure. With that philosophy Python was faster at functional programming than Haskell for many years. Apparently now, after decades of research involving most of the computer language design academic community (those not into Ocaml use Haskell)... apparently Haskell is now pretty good at strictness analysis. Although last time I tried it on Ackermann's function .. Felix trashed Ocaml, dropped from 50% faster than C to only 60% of C's speed, and Haskell wasn't even worth measuring it was so bad. -- john skaller skal...@users.sourceforge.net http://felix-lang.org ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language