206 research outputs found

    Conference on the Programming Environment for Development of Numerical Software

    Get PDF
    Systematic approaches to numerical software development and testing are presented

    Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili

    Get PDF
    This book captures the main scientific contributions of Victor R. Basili, who has significantly shaped the field of empirical software engineering from its very start. He was the first to claim that software engineering needed to follow the model of other physical sciences and develop an experimental paradigm. By working on this postulate, he developed concepts that today are well known and widely used, including the Goal-Question-Metric method, the Quality-Improvement paradigm, and the Experience Factory. He is one of the few software pioneers who can aver that their research results are not just scientifically acclaimed but are also used as industry standards. On the occasion of his 65th birthday, celebrated with a symposium in his honor at the International Conference on Software Engineering in St. Louis, MO, USA in May 2005, Barry Boehm, Hans Dieter Rombach, and Marvin V. Zelkowitz, each a long-time collaborator of Victor R. Basili, selected the 20 most important research papers of their friend, and arranged these according to subject field. They then invited renowned researchers to write topical introductions. The result is this commented collection of timeless cornerstones of software engineering, hitherto available only in scattered publications

    Structured editing of literate programs

    Get PDF

    Aerospace Applications of Microprocessors

    Get PDF
    An assessment of the state of microprocessor applications is presented. Current and future requirements and associated technological advances which allow effective exploitation in aerospace applications are discussed

    Design automation of a machine-independent code generator

    Get PDF
    As both computer languages and architectures continue to proliferate, there is a continuing need for new compilers. Researchers have attempted to ease the work of producing compilers by developing methods to automate compiler writing. While much work has been done (and considerable success achieved) in writing parsers which can handle a variety of source languages (using mainly table-driven analysis methods), less progress has been made in formalizing the code generation end of the compiler. Nevertheless, some of the more recent publications in code generation stress portability or retargetability of the resulting compiler. A number of code generator synthesisers have been developed, some of which produce code that can be compared in quality with that produced by a conventional code generator. However, because of the complexity of generalizing the mapping from source language to target machine, and the need for efficiency of various kinds, code generator synthesisers are large, complicated programs. Consequently, the person who develops a code generator using one of these tools invariably needs to be a code generation specialist himself. Many compilers follow a pattern of having a front end which generates intermediate code, and a back end which converts intermediate code to machine code. The intermediate code is effectively machine independent, or can be designed that way. With these points in mind, we have set out to write a system of programs which -- 1. will allow the generation of such a back end in a reasonably short time, for a general intermediate code, and for a general machine code, and -- 2. can be used by anyone who has a sound knowledge of the target machine's architecture and associated assembler language, but is not necessarily a specialist compiler writer. The system consists of a series of friendly, interactive programs by means of which the user sets up tables defining the architecture and assembly level instructions for the target machine, and the code templates onto which intermediate codes produced by a parser have been mapped. A general notation has been developed to represent machine instructions using the same format as the target assembler. Thus the code generator writer is able to write code sequences to perform the effects of the intermediate codes, using assembly mnemonics familiar to him. The resultant table-driven code generator simply replaces a sequence of intermediate codes by their respective code templates, relocating them in memory and filling in addresses known only at code-generation time. This thesis describes the use and implementation details of this generalized code generation system. As an example, the implementation of a code generator for a CLANG [23] parser on an 8080 processor is described. The discussion also includes guide-lines on how to implement a loader and associated run-time routines for use in executing the object code. The results of a number of bench-marks have shown, as expected, that code produced by a code generator developed in this manner is larger and slower than that from a special purpose optimizing code generator, but is still several times faster than interpreting the intermediate code. The major benefit to be gained from using this system lies in the shorter development time by a less skilled person.KMBT_223Adobe Acrobat 9.53 Paper Capture Plug-i

    A survey of compiler development aids

    Get PDF
    A theoretical background was established for the compilation process by dividing it into five phases and explaining the concepts and algorithms that underpin each. The five selected phases were lexical analysis, syntax analysis, semantic analysis, optimization, and code generation. Graph theoretical optimization techniques were presented, and approaches to code generation were described for both one-pass and multipass compilation environments. Following the initial tutorial sections, more than 20 tools that were developed to aid in the process of writing compilers were surveyed. Eight of the more recent compiler development aids were selected for special attention - SIMCMP/STAGE2, LANG-PAK, COGENT, XPL, AED, CWIC, LIS, and JOCIT. The impact of compiler development aids were assessed some of their shortcomings and some of the areas of research currently in progress were inspected

    Natural language software registry (second edition)

    Get PDF

    A multi-mode sonar transmitter

    Get PDF
    This project was initiated to evaluate appropriate microprocessor and digital logic techniques that could increase the flexibility and effectiveness of a sonar transmitter. The study led to a multi-channel signal synthesis concept designed to exploit 'phased array' steering techniques. Two versions of the equipment have now been built and evaluated. Mk.I is a relatively low power 15 channel system with 2 kilowatts total electrical power using a 40 kHz 15 λ x 1 line array. This system proved the practicability of the basic concept and its success led to the 16 kilowatt Mk2 high power version which drives a 16λ x 16 λ wideband transducer array. The study included: The design and construction of a multi-channel signal generator. The writing of control and signal synthesis software. The design, evaluation and commissioning of suitable linear power amplifiers . Investigations into suitable transducers and phased array design, leading to the manufacture of suitable matched wide band multi-channel 'staved' transducer arrays. Finally, a series of trials were made in a variety of open water conditions to evaluate the systems performance and investigate the multiple modes of operation that have been developed. The system has successfully demonstrated that transmitter beam steering is both practical and flexible. The techniques implemented permit sector interrogation by 'within-pulse' type sweeps, by 'Ripple-fire' and by transmitting steered 'Pings' sequentially on prededermined bearings. Each mode allows considerable flexibility in the generated waveform shape and frequency. The 'Multi-Mode' capability of this approach was conceived primarily as a research tool but many of the modes can be isolated and exploited in dedicated applications
    corecore