Compiling with Continuations
Seiten
2007
Cambridge University Press (Verlag)
978-0-521-03311-4 (ISBN)
Cambridge University Press (Verlag)
978-0-521-03311-4 (ISBN)
This book shows how continuation-passing style is used as an intermediate representation on which to perform optimisations and program transformations. It will be essential reading for compiler writers in both industry and academe, as well as for students and researchers in programming language theory.
The control and data flow of a program can be represented using continuations, a concept from denotational semantics that has practical application in real compilers. This book shows how continuation-passing style is used as an intermediate representation on which to perform optimisations and program transformations. Continuations can be used to compile most programming languages. The method is illustrated in a compiler for the programming language Standard ML. However, prior knowledge of ML is not necessary, as the author carefully explains each concept as it arises. This is the first book to show how concepts from the theory of programming languages can be applied to the producton of practical optimising compilers for modern languages like ML. This book will be essential reading for compiler writers in both industry and academe, as well as for students and researchers in programming language theory.
The control and data flow of a program can be represented using continuations, a concept from denotational semantics that has practical application in real compilers. This book shows how continuation-passing style is used as an intermediate representation on which to perform optimisations and program transformations. Continuations can be used to compile most programming languages. The method is illustrated in a compiler for the programming language Standard ML. However, prior knowledge of ML is not necessary, as the author carefully explains each concept as it arises. This is the first book to show how concepts from the theory of programming languages can be applied to the producton of practical optimising compilers for modern languages like ML. This book will be essential reading for compiler writers in both industry and academe, as well as for students and researchers in programming language theory.
Acknowledgements; 1. Overview; 2. Continuation-passing style; 3. Semantics of the CPS; 4. ML-specific optimizations; 5. Conversion into CPS; 6. Optimization of the CPS; 7. Beta expansion; 8. Hoisting; 9. Common subexpressions; 10. Closure conversion; 11. Register spilling; 12. Space complexity; 13. The abstract machine; 14. Machine-code generation; 15. Performance evaluation; 16. The runtime system; 17. Parallel programming; 18. Future directions; Appendices; Bibliography; Index.
Erscheint lt. Verlag | 1.2.2007 |
---|---|
Verlagsort | Cambridge |
Sprache | englisch |
Maße | 170 x 244 mm |
Gewicht | 440 g |
Themenwelt | Mathematik / Informatik ► Informatik ► Betriebssysteme / Server |
Informatik ► Office Programme ► Outlook | |
Informatik ► Theorie / Studium ► Compilerbau | |
ISBN-10 | 0-521-03311-X / 052103311X |
ISBN-13 | 978-0-521-03311-4 / 9780521033114 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
Mehr entdecken
aus dem Bereich
aus dem Bereich
Buch | Softcover (2022)
Markt + Technik Verlag
CHF 20,90
Band 1: Grundlagen des digitalen Zeitalters
Buch | Softcover (2024)
Springer Gabler (Verlag)
CHF 69,95