The proceedings contain 31 papers. The special focus in this conference is on Object Technologies for Advanced Software. The topics include: Uniting functional and object-oriented programming;a support for software co...
ISBN:
(纸本)9783540573425
The proceedings contain 31 papers. The special focus in this conference is on Object Technologies for Advanced Software. The topics include: Uniting functional and object-oriented programming;a support for software component cooperation;an object orientation kernel;change management and consistency maintenance in software development environments using object oriented attribute grammars;design of an integrated and extensible C++ programming environment;definition of a reflective kernel for a prototype-based language;kernel structuring for object-oriented operating systems;maintaining behavioral consistency during schema evolution;an object-centered approach for manipulating hierarchically complex objects;towards the unification of views and versions for object databases;abstract view objects for multiple OODB integration;an object-oriented query model supporting views;refactoring and aggregation;transverse activities: abstractions in object-oriented programming;dynamic extensibility in a statically-compiled object-oriented language;managing change in persistent object systems;an object-oriented pattern matching language;a class-based logic language for object-oriented databases;name management and object technology for advanced software;constraints in object-oriented analysis;minimizing dependency on class structures with adaptive programs;first class messages as first class continuations;a typing system for a calculus of objects;a type mechanism based on restricted CCS for distributed active objects;adding implicit invocation to languages;requirements and early experiences in the implementation of the SPADE repository using object-oriented technology;object-oriented formal specification development using VDM.
Aspect-oriented programming (AOP) provides a way to modularize crosscutting concerns. Crosscuting concerns can be found in various representations of software artifacts and in different steps of software life cycle (e...
详细信息
Aspect-oriented programming (AOP) provides a way to modularize crosscutting concerns. Crosscuting concerns can be found in various representations of software artifacts and in different steps of software life cycle (e.g., source code, models, requirements, language grammars). This paper provides an introduction to the AspectLISA tool and its aspect-oriented specification language for programming language definition and compiler construction. AspectLISA is a mature, well-tested system for automatically generating compilers, interpreters, and other language related tools from formal incremental and reusable aspect-oriented attribute grammar-based specifications. In the paper we discuss about the issues involved in the design and implementation of domain-specific aspect language for compiler construction, as well as some benefits of aspect-oriented specifications.
In this paper, we describe our experience with an application-centered approach in teaching a course on web technology. The purpose of the course was to teach the principles of data-base driven web sites, their design...
详细信息
In this paper, we describe our experience with an application-centered approach in teaching a course on web technology. The purpose of the course was to teach the principles of data-base driven web sites, their design and the integration of the underlying components. The class was partitioned into small teams, where each team had their own dedicated server. Each team was responsible for achieving certain milestones that culminated in the implementation of a data-base driven web site. Lectures and demonstrations were used to provide information on a need-to-know basis. Our experience was highly positive. Synergy and student motivation grew as the course progressed. By the end of the semester teams had developed near-professional quality web sites. We describe course details including syllabus, lecture topics, and milestone objectives.
Two-level predictors improve branch prediction accuracy by allowing predictor tables to hold multiple predictions per branch. Unfortunately, the accuracy of such predictors is impaired by two detrimental effects. Capa...
详细信息
Two-level predictors improve branch prediction accuracy by allowing predictor tables to hold multiple predictions per branch. Unfortunately, the accuracy of such predictors is impaired by two detrimental effects. Capacity misses increase since each branch may occupy many entries, depending on the number of different path histories leading up to the branch. The working set of a given program therefore increases with history length. Similarly, cold start misses increase with history length since the predictor must firststore a prediction separately for each history pattern before it can predict branches with that history. We describe a new hybrid predictor architecture, cascaded branch prediction, which can alleviate both of these effects while retaining the superior accuracy of two level predictors. Cascaded predictors dynamically classify and predict easily predicted branches using an inexpensive predictor, preventing insertion of these branches into a more powerful second stage predictor. We show that for path-based indirect branch predictors, cascaded prediction obtains prediction rates equivalent to that of two-level predictors at approximately one fourth the cost. For example, a cascaded predictor with 64+1024 entries achieves the same prediction accuracy as a 4096-entry two-level predictor. Although we have evaluated cascaded prediction only on indirect branches, we believe that it could also improve conditional branch prediction and value prediction.
An overview is given of the lessons learned from the introduction of multi-threading using OpenMP in tmLQCD. In particular, programming style, performance measurements, cache misses, scaling, thread distribution for h...
详细信息
An overview is given of the lessons learned from the introduction of multi-threading using OpenMP in tmLQCD. In particular, programming style, performance measurements, cache misses, scaling, thread distribution for hybrid codes, race conditions, the overlapping of communication and computation and the measurement and reduction of certain overheads are discussed. Performance measurements and sampling profiles are given for different implementations of the hopping matrix computational kernel.
暂无评论