Towards the uniform implementation of declarative languages

作者: Manuel M.T. Chakravarty , Hendrik C.R. Lock

DOI: 10.1016/S0096-0551(97)00012-X

关键词:

摘要: Current implementation techniques for functional languages differ considerably from those logic languages. This complicates the development of flexible and efficient abstract machines that can be used compilation declarative combining concepts programming. We propose an machine, called JUMP-machine, which systematically integrates operational needed to implement programming paradigm. The use a tagless representation heap objects, originates Spineless Tagless G-machine, supports integration different concepts. In this paper, we provide kernel language show how translate it into machine JUMP-machine. Furthermore, define semantics formally discuss mapping concrete architectures. tested approach by writing compiler GTML. obtained performance results indicate proposed method allows efficiently.

参考文章(57)
Thomas Johnsson, Efficient compilation of lazy evaluation Proceedings of the 1984 SIGPLAN symposium on Compiler construction - SIGPLAN '84. ,vol. 39, pp. 58- 69 ,(1984) , 10.1145/502874.502880
Nandakumar Sankaran, A bibliography on garbage collection and related topics ACM SIGPLAN Notices. ,vol. 29, pp. 149- 158 ,(1994) , 10.1145/185009.185040
DALE MILLER, A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification Journal of Logic and Computation. ,vol. 1, pp. 497- 536 ,(1991) , 10.1093/LOGCOM/1.4.497
Simon L. Peyton Jones, Philip Wadler, Imperative functional programming Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '93. pp. 71- 84 ,(1993) , 10.1145/158511.158524
Sergio Antoy, Rachid Echahed, Michael Hanus, A needed narrowing strategy symposium on principles of programming languages. pp. 268- 279 ,(1994) , 10.1145/174675.177899
Patricia Hill, John Lloyd, The Go¨del programming language MIT Press. ,(1994)
Simon L. Peyton Jones, Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine Journal of Functional Programming. ,vol. 2, pp. 127- 202 ,(1992) , 10.1017/S0956796800000319
R. D. Tennent, Principles of Programming Languages Prentice Hall PTR. ,(1981)
Hassan Aït-Kaci, Andreas Podelski, Towards a meaning of LIFE international symposium on programming language implementation and logic programming. pp. 255- 274 ,(1991) , 10.1007/3-540-54444-5_104
Pieter H. Hartel, Koen G. Langendoen, Benchmarking implementations of lazy functional languages Proceedings of the conference on Functional programming languages and computer architecture - FPCA '93. pp. 341- 349 ,(1993) , 10.1145/165180.165230