[comp.lang.scheme] Intermediate Lambda Calculus --> Machine code

kjell@venus.ucsc.edu (Kjell Post) (09/07/88)

I am looking for articles, books etc that describes various ways
of compiling intermediate lambda calculus (eg, produced by a 
compiler for a functional language or a denotational description
of any programming language) to real machine code. The work that
I've seen usually employs some abstract machine (SECD, G, CAM etc)
or relies on a selected set of combinators (Wand, Sethi).

Email please. Thanks.

-------------------------------------------------------------------------------
   Y F = F(Y F)                    ! Kjell Post, Dept of Comp & Info Sciences
"This superamazing, clever thing"  ! University of California, Santa Cruz
		-- G.J.Sussman     ! Email: kjell@saturn.ucsc.edu

jeschke@iuvax.cs.indiana.edu (Eric Jeschke) (09/09/88)

    "The Implementation of Functional Programming Languages" by Simon
Peyton-Jones is a good book for this.    It basically describes the
state-of-the-art in sequential implementations: pattern matching, typing,
optimization and supercombinator generation.
There is a very thorough treatment of the lambda calculus spanning several
chapters.   I highly recommend it.

Eric
-- 
Eric
  jeschke@iuvax.cs.indiana.edu

Gimme shelter.

markv@uoregon.uoregon.edu (Mark VandeWettering) (09/09/88)

In article <12502@iuvax.cs.indiana.edu> jeschke@iuvax.UUCP (Eric Jeschke) writes:
>
>    "The Implementation of Functional Programming Languages" by Simon
>Peyton-Jones is a good book for this.    It basically describes the
>state-of-the-art in sequential implementations: pattern matching, typing,
>optimization and supercombinator generation.
>There is a very thorough treatment of the lambda calculus spanning several
>chapters.   I highly recommend it.

	I was going to recommend this book as well.  A MUST-HAVE for you
	shelf if you are at all interested in compiling declarative
	languages.  More raw brainpower went into this book than you
	could find in 1000 hours at a library.  It is well organized (in
	spite of several chapters being written by different authors)
	and very thorough.


	This book encouraged me to pursue a Master's thesis in the topic
	of parallel implementation of functional languages based upon
	the lambda calculus.

mark vandewettering