The proceedings contain 28 papers. The topics discussed include: efficient and exact data dependence analysis;practical dependence testing;a data locality optimizing algorithm;CCG: a prototype coagulating code generat...
ISBN:
(纸本)0897914287
The proceedings contain 28 papers. The topics discussed include: efficient and exact data dependence analysis;practical dependence testing;a data locality optimizing algorithm;CCG: a prototype coagulating code generator;predicting program behavior using real or estimated profiles;procedure merging with instruction caches;strictness and binding-time analyses: two for the price of one;parameterized partial evaluation;the semantic approach to program slicing;automatic generation of global optimizers;size and access inference for data-parallel programs;and Fortran at ten gigaflops: the connection machine convolution compiler.
Precise and efficient dependence tests are essential to the effectiveness of a parallelizing compiler. This paper proposes a dependence testing scheme based on classifying pairs of subscripted variable references. Exa...
详细信息
This paper outlines the history of the C++ programminglanguage. The emphasis is on the ideas, constraints, and people that shaped Lie language, rather than the minutiae oflanguagp features. Key design decisions relat...
详细信息
ISBN:
(纸本)0897915704
This paper outlines the history of the C++ programminglanguage. The emphasis is on the ideas, constraints, and people that shaped Lie language, rather than the minutiae oflanguagp features. Key design decisions relating to language features are discussed, but the focus is on the overall design goals and practical constraints. The evolution of C++ is traced from C with Classes to the current ANSI and ISO standards work and the explosion of use. interest, commercial activity, compilers, tools, environments, and libraries.
With the emergence of a number of strongly typed languages with very dynamic storage allocation, efficient methods of storage reclamation have become especially important. Even though no type tags are required for typ...
详细信息
ISBN:
(纸本)9780897914284
With the emergence of a number of strongly typed languages with very dynamic storage allocation, efficient methods of storage reclamation have become especially important. Even though no type tags are required for type checking programs written in these languages, current implementations do use tags to support run time garbage collection. This often inflicts a high time and space overhead on program execution. Since the early days of LISP (and Algo168 later on), there have been schemes for performing tag-free garbage collection. In this paper, we describe an improvement of existing methods that leads to more effective storage reclamation in the absence of tags. Garbage collection has also traditionally been viewed as being independent of the particular program being executed. This means that results of compile-time analyses which could increase the effectiveness of garbage collection cannot be incorporated easily into the garbage collection process. This paper describes a method for performing garbage collection 1) in the absence of tagged data, and 2) using compile-time information. This method relies on compiler-generated garbage collection routines specific to the program being executed and incurs no time overhead during execution other then the cost of the garbage collection process itself. We describe tag-free garbage collection methods for monomorphically typed and polymorphically typed languages, and suggest how they might be extended to support parallel languages.
The proceedings contain 12 papers. The topics discussed include: AppleScript;the evolution of Lua;modula-2 and Oberon;evolving a language in and for the real world: C++ 1991-2006;statecharts in the making: a personal ...
详细信息
The proceedings contain 12 papers. The topics discussed include: AppleScript;the evolution of Lua;modula-2 and Oberon;evolving a language in and for the real world: C++ 1991-2006;statecharts in the making: a personal account;a history of Erlang;the rise and fall of high performance fortran: an historical object lesson;the design and development of ZPL;self;the when, why and why not of the BETA programminglanguage;the development of the Emerald programminglanguage;and a history of Haskell: being lazy with class.
We describe a general module language integrating abstract data types, specifications and object-oriented concepts. The framework is based on the Standard ML module system, with three main extensions: subtyping, a for...
详细信息
Ada has introduced some very useful concepts for programming large software systems. In particular, modularity, data encapsulation and generics are extremely useful concepts introduced by Ada in 1980. Since then inter...
详细信息
ISBN:
(纸本)0897914457
Ada has introduced some very useful concepts for programming large software systems. In particular, modularity, data encapsulation and generics are extremely useful concepts introduced by Ada in 1980. Since then interesting new ideas have been developed in functional languages and object-oriented programming. Ideally, productive ideas of all three directions in programminglanguagedesign should be available for software system implementation.
The years 1985 through 1995 saw the birth and development of the language Self, starting from its design by the authors at Xerox PARC, through first implementations by Ungar and his graduate students at Stanford Unive...
详细信息
暂无评论