Please note, due to scheduled maintenance online transactions will not be possible between 08:00 and 12:00 BST, on Sunday 17th February 2019 (03:00-07:00 EDT, 17th February, 2019). We apologise for any inconvenience
Higher-order languages that encourage currying are typically implemented using one of two basic evaluation models: push/enter or eval/apply. Implementors use their intuition and qualitative judgements to choose one model or the other. Our goal in this paper is to provide, for the first time, a more substantial basis for this choice, based on our qualitative and quantitative experience of implementing both models in a state-of-the-art compiler for Haskell. Our conclusion is simple, and contradicts our initial intuition: compiled implementations should use eval/apply.
Email your librarian or administrator to recommend adding this journal to your organisation's collection.