Efficient Polymorphic Calls: 596 (The Springer International Series in Engineering and Computer Science, 596) - Tapa dura

Libro 111 de 260: The Springer International Series in Engineering and Computer Science

Driesen, Karel

 
9780792372899: Efficient Polymorphic Calls: 596 (The Springer International Series in Engineering and Computer Science, 596)

Sinopsis

The implementation of object-oriented languages has been an active topic of research since the 1960s when the first Simula compiler was written. The topic received renewed interest in the early 1980s with the growing popularity of object-oriented programming languages such as c++ and Smalltalk, and got another boost with the advent of Java. Polymorphic calls are at the heart of object-oriented languages, and even the first implementation of Simula-67 contained their classic implementation via virtual function tables. In fact, virtual function tables predate even Simula-for example, Ivan Sutherland’s Sketchpad drawing editor employed very similar structures in 1960. Similarly, during the 1970s and 1980s the implementers of Smalltalk systems spent considerable efforts on implementing polymorphic calls for this dynamically typed language where virtual function tables could not be used. Given this long history of research into the implementation of polymorphic calls, and the relatively mature standing it achieved over time, why, one might ask, should there be a new book in this field? The answer is simple. Both software and hardware have changed considerably in recent years, to the point where many assumptions underlying the original work in this field are no longer true. In particular, virtual function tables are no longer sufficient to implement polymorphic calls even for statically typed languages; for example, Java’s interface calls cannot be implemented this way. Furthermore, today’s processors are deeply pipelined and can execute instructions out-of­ order, making it difficult to predict the execution time of even simple code sequences.

"Sinopsis" puede pertenecer a otra edición de este libro.

Reseña del editor

The implementation of object-oriented languages has been an active topic of research since the 1960s when the first Simula compiler was written. The topic received renewed interest in the early 1980s with the growing popularity of object-oriented programming languages such as c++ and Smalltalk, and got another boost with the advent of Java. Polymorphic calls are at the heart of object-oriented languages, and even the first implementation of Simula-67 contained their classic implementation via virtual function tables. In fact, virtual function tables predate even Simula-for example, Ivan Sutherland's Sketchpad drawing editor employed very similar structures in 1960. Similarly, during the 1970s and 1980s the implementers of Smalltalk systems spent considerable efforts on implementing polymorphic calls for this dynamically typed language where virtual function tables could not be used. Given this long history of research into the implementation of polymorphic calls, and the relatively mature standing it achieved over time, why, one might ask, should there be a new book in this field? The answer is simple. Both software and hardware have changed considerably in recent years, to the point where many assumptions underlying the original work in this field are no longer true. In particular, virtual function tables are no longer sufficient to implement polymorphic calls even for statically typed languages; for example, Java's interface calls cannot be implemented this way. Furthermore, today's processors are deeply pipelined and can execute instructions out-of­ order, making it difficult to predict the execution time of even simple code sequences.

Reseña del editor

To achieve superior performance, language implementers and computer architects must pay increasingly close attention to polymorphic function calls. Such calls are at the heart of all object-oriented languages, including C++, Smalltalk, and Java.
The implementation of object-oriented languages has been an active topic of research since the 1960s when the first Simula compiler was written, and there has been renewed interest in the topic in the early 1980s with the growing popularity of many object-oriented programming languages. Both software and hardware have changed considerably in the interim, to the point where many assumptions based on older studies are no longer valid. Furthermore, today's processors are deeply pipelined and can execute instructions out-of-order, making it difficult to predict the execution time of even simple code sequences. Given the long history of research into the implementation of polymorphic calls and the relatively mature standing it has achieved, Efficient Polymorphic Calls aims to present an up-to-date authoritative guide to the field.
Efficient Polymorphic Calls is a key resource for practitioners building an object-oriented system, who look for fast polymorphic call resolution under particular hardware constraints, graduate students interested in the development of object-oriented systems, and anyone with an interest in programming language implementation at the software or hardware level.

"Sobre este título" puede pertenecer a otra edición de este libro.

Otras ediciones populares con el mismo título

9781461356752: Efficient Polymorphic Calls: 596 (The Springer International Series in Engineering and Computer Science)

Edición Destacada

ISBN 10:  146135675X ISBN 13:  9781461356752
Editorial: Springer, 2012
Tapa blanda