RETROSPECTIVE : Ef fi cient Compilation of Lazy Evaluation
RETROSPECTIVE : Ef fi cient Compilation of Lazy Evaluation
复制标题
回顾:惰性求值的高效编译
DOI:
--
复制
发表时间:
2004
期刊:
影响因子:
--
通讯作者:
T. S. Badhusgatan
中科院分区:
文献类型:
--
作者:
Thomas Johnsson;T. S. Badhusgatan
In the late seventies and and early eighties, many people in the programming languages’ community sought to depart from the von Neumann oriented style of programming, with variables (memory cells) and statements (machine instructions) that operated upon them. The quest was towards semantically simpler and more elegant languages, enabling a more succinct notation, inspired by the lambda calculus as is the case for functional languages, or logic as is the case for logic programming languages e.g. Prolog. Parallel to this trend, the computer architecture community sought to exploit the ever cheaper hardware for multi processor computers. By a happy coincidence, functional languages, with their lack of side effects, was seen as a splendid vehicle for writing programs with large amounts of parallelism. And so there were quite a number of projects to design and build such computers, perhaps the most notable being the MIT data o w work by Dennis, Arvind et al, but also reduction architectures, more geared towards lazy languages — see the collection [25]. In fact, it was widely held that novel architectures were needed to get any kind of execution ef cienc y out of functional languages, especially lazy ones, even when parallelism was not an issue.