A variety of language features to modularize crosscutting concerns have recently been discussed, e.g. open modules, annotation-based pointcuts, explicit join points, and quantified-typed events. All of these ideas are...
详细信息
Run-time contract enforcement is a useful means to help ensure the reliability of a software system. Due to the scattering and tangling nature of crosscutting concerns, aspects can have a high degree of coupling with ...
详细信息
The proceedings contain 55 papers. The topics discussed include: commutative set: a language extension for implicit parallel programming;the Tao of parallelism in algorithms;data representation synthesis;synthesizing ...
详细信息
ISBN:
(纸本)9781450306638
The proceedings contain 55 papers. The topics discussed include: commutative set: a language extension for implicit parallel programming;the Tao of parallelism in algorithms;data representation synthesis;synthesizing geometry constructions;synthesis of loop-free programs;generalized just-in-time trace compilation using a parallel task farm in a dynamic binary translator;brainy: effective selection of data structures;an SSA-based algorithm for optimal speculative code motion under an execution profile;caisson: a hardware description language for secure information flow;steno: automatic optimization of declarative queries;languages as libraries;automatic CPU-GPU communication management and optimization;automatic compilation of MATLAB programs for synergistic execution on heterogeneous processors;partial-coherence abstractions for relaxed memory models;and probabilistic, modular and scalable inference of typestate specifications.
To increase modularity, aspect-oriented programming provides a mechanism based on implicit invocation: An aspect can influence runtime behavior of other modules without the need that these modules refer to the aspect....
详细信息
The proceedings contain 15 papers. The topics discussed include: HILT'12 tutorial overview design of multitask software: the entity-life modeling approach;leading-edge Ada verification technologies: combining test...
ISBN:
(纸本)9781450315050
The proceedings contain 15 papers. The topics discussed include: HILT'12 tutorial overview design of multitask software: the entity-life modeling approach;leading-edge Ada verification technologies: combining testing and verification with GNATTest and GNATProve - the hi-lite project;multicore programming using divide-and-conquer and work stealing;dynamic memory management in safety critical java;hi-lite: the convergence of compiler technology and program verification;implementation of a simple dimensionality checking system in Ada 2012;a new robust and efficient implimentation of controlled types in the gnat compiler;HacmS: high assurance cyber military systems;a DSL for cross-domain security;real-time java in modernization of the aegis weapon system;FAA's controller pilot automatic data communication (data comm) system software development;and applicability of real-time schedulability analysis on a software radio protocol.
Software-defined networks (SDNs) are a new kind of network architecture in which a controller machine manages a distributed collection of switches by instructing them to install or uninstall packet-forwarding rules an...
详细信息
languages such as OpenCL and CUDA offer a standard interface for general-purpose programming of GPUs. However, with these languages, programmers must explicitly manage numerous low-level details involving communicatio...
详细信息
ISBN:
(纸本)9781450312059
languages such as OpenCL and CUDA offer a standard interface for general-purpose programming of GPUs. However, with these languages, programmers must explicitly manage numerous low-level details involving communication and synchronization. This burden makes programming GPUs difficult and error-prone, rendering these powerful devices inaccessible to most programmers. We desire a higher-level programming model that makes GPUs more accessible while also effectively exploiting their computational power. This paper presents features of Lime, a new Java-compatible language targeting heterogeneous systems, that allow an optimizing compiler to generate high quality GPU code. The key insight is that the language type system enforces isolation and immutability invariants that allow the compiler to optimize for a GPU without heroic compiler analysis. Our compiler attains GPU speedups between 75% and 140% of the performance of native OpenCL code.
Dynamic binary translation frameworks enable late modifications of binary programs. The binary translator needs to generate dynamic code at runtime for trampolines, translated control flow instructions, additional run...
详细信息
Feature-oriented programming (FOP) toolkits restrict implementers of software product lines to certain implementation choices. One is left with the choices between, for example, class-level or object-level extensions ...
详细信息
ISBN:
(纸本)9781450313094
Feature-oriented programming (FOP) toolkits restrict implementers of software product lines to certain implementation choices. One is left with the choices between, for example, class-level or object-level extensions and between static or dynamic feature bindings. These choices are typically made at an early development stage causing an unwanted lock-in. We present a feature-oriented development framework based on dynamic, object-oriented constructs for deferring such design decisions by piggybacking on first-class language entities (metaclasses, mixins). A framework prototype is available for the scripting language NX. NX provides the required object-oriented language infrastructure: a reflective language model, metaclasses, multiple class-based inheritance, decorator mixins, and open entity declarations. We exemplify the approach based on a Graph Product Line. Copyright 2012 acm.
暂无评论