Tail call elimination on the Java Virtual Machine

Michel Schinz and Martin Odersky, EPFL Lausanne

Proc. ACM SIGPLAN BABEL'01 Workshop on Multi-Language Infrastructure and Interoperability.

Abstract

A problem that often has to be solved by compilers for functional languages targeting the Java Virtual Machine is the elimination of tail calls. This paper explains how we solved it in our Funnel compiler and presents some experimental results about the impact our technique has on both performance and size of the compiled programs.

Paper

in .ps or .ps.gz .dvi or .dvi.gz format.

BibTeX Entry

@InProceedings{schinz-odersky:babel01,
  author = 	 {Michel Schinz and Martin Odersky},
  title = 	 {Tail call elimination on the Java Virtual Machine},
  booktitle = 	 {Proc. ACM SIGPLAN BABEL'01 Workshop on Multi-Language
Infrastructure and Interoperability.},
  pages =	 {155-168},
  year =	 2001,
  volume =	 59,
  number =	 1,
  series =	 {Electronic Notes in Theoretical Computer Science},
  publisher =	 {Elsevier},
  note =	 {http://www.elsevier.nl/locate/entcs/volume59.html}
}

Martin Odersky
Last modified: Sep 19, 2001