4 research outputs found

    Exceptions for Algorithmic Skeletons

    Get PDF
    to appearInternational audienceAlgorithmic Skeletons offer high-level abstractions for parallel programming based on recurrent parallelism patterns. Patterns can be combined and nested into more complex parallelism behaviors. Programmers fill the skeleton patterns with the functional (business) code, which transforms the generic skeleton into a specific application. However, when the functional code generate exceptions, this exposes the programmer to details of the skeleton library, breaking the high-level abstraction principle. Furthermore, related parallel activities must be stopped as the exception is raised. This paper describes how to handle exceptions in Algorithmic Skeletons without breaking the high-level abstractions of the programming model. We describe both the behavior of the framework in a formal way, and its implementation in Java: the Skandium Library

    Guaranteed Optimization for Domain-Specific Programming

    No full text
    Abstract. For software engineering reasons, it is often best to provide domain-specific programming environments in the context of a generalpurpose language. In our view general-purpose languages are not yet general-purpose enough, and progress needs to be made before we can provide domain-specific languages that are both fast and safe. We outline some goals in this regard, and describe a possible implementation technology: guaranteed optimization, a technique for building compilers that provide proven guarantees of what optimizations they perform. Such optimizers can provide capabilities similar to staged languages, and thus provide the relevant performance improvements. They can also function as decision procedures, suggesting an approach of ’optimizers as theorem provers, ’ in which optimizing compilers can be used to check domainspecific safety properties and check proofs embedded in programs.
    corecore