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

Reply via email to