我正在寻找一个使用严格求值的哈斯克尔编译器,而不是惰性求值。我本可以使用OCaml,但Haskell的语法比OCaml好得多(而且Haskell是纯净的,具有类型类等酷炫功能)。
我真的不想在我的程序中到处都加上!
和$!
。如果有一个开关或预处理器来放置严格性注释,那将非常好。如果有一种方法在某些地方使用惰性求值,以防我需要像无限列表这样的东西(虽然我可能永远不会需要),那也将很有帮助。
请不要试图说服我惰性求值更好,我真的需要性能。如果我没记错,Simon Peyton Jones甚至说过,惰性求值并不是必需的,它主要是为了防止使语言变得不纯。