Partial Evaluation and Automatic Program Generation

Book image

Livro digital

Título:
Partial Evaluation and Automatic Program Generation

Autor:
Neil D. Jones, C.K. Gomard, Peter Sestoft

Categoria:
Tecnologia > Backend

Doador:
Raffaello D. N.

Sinopse:
Partial evaluation is one of those ideas that sounds almost too good to be true: take a general program and a partial set of its inputs, then automatically generate a specialized version that runs faster. This book is the canonical reference on the subject, written by the researchers who defined the field. It opens with the fundamental insight — that program specialization can be understood as a staged computation — and then builds the formal machinery to make that insight precise and practical. The book proceeds from flow chart languages to first-order functional languages to the full lambda calculus, introducing binding-time analysis, abstract interpretation, and self-application along the way. The chapters on the Futamura projections are essential reading: they show how a partial evaluator applied to itself yields a compiler generator, closing a theoretical loop that connects interpretation, compilation, and program generation into a single framework. Later sections cover specialization for Prolog and the design of Similix, a working partial evaluator for Scheme. Out of print commercially but kept alive by its authors, this book remains the deepest single volume on automatic program specialization. It demands fluency in programming language theory and rewards the effort with a perspective on computation that reframes the boundary between compile time and run time. For compiler writers and language designers, the techniques described here have influenced just-in-time compilation, template metaprogramming, and domain-specific language implementation for decades.

Livro digital disponível gratuitamente!
Clique no botão abaixo para receber este livro.
Seja o primeiro a receber este livro
Comprar na Amazon
Esse site salva cookies para uma melhor experiência de usuário. Saiba mais lendo nossaPolítica de Privacidade.