Newsletter Downloads
Book review: Chemical Searching on an Array Processor by Terence Wilson, John Wiley & Sons, New York (ISBN 0-471-93436-4) Research Studies Press, Somerset, England (ISBN 9-86380-125-5) Hard cover, 197 pages, $115
This book is apparently the author's 1991 Ph.D. thesis, completed at the University of Sheffield under the supervision of Peter Willett. The goal of the work was to explore the use of parallel processing to search a database of molecular structures for ...
Book review: Research Directions in Concurrent Object-Oriented Programming (Gul Agha, Peter Wegner, and Akinorl Yonezawa, eds; MIT Press, 1993; 532pp.
From the preface: "Because parallelism is a natural consequence of the use of objects, the development of systems for concurrent object-oriented programming is providing important software support for a new generation of concurrent computers."
Fusing loops with backward inter loop data dependence
Loop fusion has been a traditional transformation in optimizing and parallelizing compilers. There are various benefits in performing loop fusion. Most trivially, loop fusion reduces the overheads associated in implementing loops in computer hardware by ...
SUIF: an infrastructure for research on parallelizing and optimizing compilers
- Robert P. Wilson,
- Robert S. French,
- Christopher S. Wilson,
- Saman P. Amarasinghe,
- Jennifer M. Anderson,
- Steve W. K. Tjiang,
- Shih-Wei Liao,
- Chau-Wen Tseng,
- Mary W. Hall,
- Monica S. Lam,
- John L. Hennessy
Compiler infrastructures that support experimental research are crucial to the advancement of high-performance computing. New compiler technology must be implemented and evaluated in the context of a complete compiler, but developing such an ...
An extensible program representation for object-oriented software
An extensible representation for object-oriented programs is presented. It is based on the concept of a program dependency graph and elaborated to include both control flow and data flow information. The representation takes advantage of the basic ...
Agora: message passing as a foundation for exploring OO language concepts
Agora is a framework for exploring object-oriented languages. In this paper we will discuss a particular prototype-based instance of Agora that features a general mixin-based approach to (multiple) inheritance. One of the major innovations of Agora is ...
Covariant specification
Covariant specification is the process in a subclass to narrow the varying scope of an instance variable, or the varying scope of the input or output interface of an operation which has already been specified in the superclass. Covariant specification ...
Considerations in choosing a concurrent/distributed object-oriented programming language
Object-oriented programming (OOP) shows great potential for use in concurrent and distributed systems. However, several issues must be considered before moving into the concurrent/distributed arena. This paper considers the following issues: sharing of ...
Comment on poor practice in coding examples
What's more depressing than a programming instructor who presents "correct" examples based on bad practice? In Bug Analysis of Pascal Programs (April, 1994, p. 15) the author posed a simple student problem:
Rapid development of a source-level debugger for PowerPC microprocessors
As design cycle times in the computer industry decrease, it becomes increasingly important to have a fast, effective software-development environment quickly available so that software may be developed for emergent microprocessors well before general ...
The C++ interface in objectivity
Computerized databases are essential and inseparable components of a vast majority of today's information systems. Database systems are used at all levels of management, research and production to provide uniform access and control of consistent ...
Remarks on A methodology for implementing highly concurrent data
Recently, a novel pair of process synchronization instructions, load_linked and store_conditional, were introduced into the computing repertoire. These instructions were used to define two novel and intriguing protocols for process synchronization, a ...
Using yacc and lex with C++
We consider one approach to using C++ to write a compiler in combination with the lexical analysis tool Lex and the parser generator tool YACC. This approach uses C++ classes and constructors to build a syntax tree during the parse. Synthesized and ...
Better C: an object-oriented C language with automatic memory manager suitable for interactive applications
C programmers are plagued by a variety of problems rooted at the language level. Memory corruption and memory leakage are two related problems that are hard to fix. The results are delayed or failed software projects.Better C is an Object-Oriented ...
Eliminate memory fragmentation through holes in the heap
Memory allocators have memory fragmentation problem, which can result in large amount of wasted memory. The capability to create unmapped pages in the heap can eliminate most of the memory fragmentation, and reduce paging I/O activity. This has ...