Skip to main content
Concurrency-related errors such as data races are frustratingly difficult to track down and eliminate in large object-oriented programs. Traditional approaches to preventing data races rely on protecting instruction sequences with... more
    • by  and +1
    •   7  
      Information SystemsObject Oriented ProgrammingCode GenerationType System
Previously, we developed a data-centric approach to concurrency control in which programmers specify synchronization constraints declaratively, by grouping shared locations into atomic sets. We implemented our ideas in a Java extension... more
    • by  and +1
Data-centric synchronization groups fields of objects into atomic sets to indicate they must be updated atomically. Each atomic set has associated units of work, code fragments that preserve the consistency of that atomic set. We present... more
    • by  and +1
    •   4  
      Code GenerationType SystemMultiple ObjectivesData Races
Increasing levels of hardware parallelism are one of the main challenges for programmers and implementers of managed runtimes. Any concurrency or scalability improvements must be evaluated experimentally. However, application benchmarks... more
    • by  and +2
Fig. 1: A ScanEagle UAV with the Boeing PRiSMj software and the Ovm Real-time JVM.
    • by 
    •   4  
      Distributed ComputingMemory ManagementComputer HardwareUnmanned Aerial Vehicle
Object-oriented languages provide little support for encapsulating objects. Reference semantics allows objects to escape their defining scope, and the pervasive aliasing that ensues remains a major source of software defects. This paper... more
    • by 
    •   3  
      Information SystemsSoftware EngineeringCompiler Optimization
We study the problem of detecting and eliminating redundancy in a sensor network with a view to improving energy efficiency, while preserving the network's coverage. We also examine the impact of redundancy elimination on the related... more
    • by 
    •   4  
      Distributed ComputingRedundancy EliminationBoundary DetectionDistributed Algorithm
The need to express important non. Javal behaviors confronts the Ovm virtual machine framework no less than any other VM-in-Java project such as JikesRVM [1]. 2 Any such project needs mechanisms for the purpose, but different choices in... more
    • by  and +1
The SEAL calculus is a calculus of mobile computations designed for programming secure distributed applications over large scale open networks. The calculus is a distributed variant of the -calculus that incorporates agent mobility as... more
    • by  and +1
    • Mobile Computer
This paper scratches the surface of the problem of classifying the attacks that a mobile computation can be subjected to in an open network. The discussion is based on a simplified version of the Seal calculus. We show the impact of these... more
    • by  and +1
    •   3  
      Mobile ObjectsMobile ComputerObservational Equivalence
Scripting is a programming technique in which applications are constructed by composing specially designed, pre-packaged software components using a restricted set of scripting operators. Scripting simplifies programming by cutting down... more
    • by 
    •   2  
      Rapid Application DevelopmentScripting Language
In recent years, various approaches to real-time execution of Java have proven their worth in numerous commercial and defense applications. The Real-time Specification for Java has extended the Java platform with a range of features... more
    • by  and +2
    •   2  
      Real Time ComputingReal Time Application
The Real-time Specification for Java (RTSJ) has been designed to cover a large spectrum of real-time applications, to achieve this goal the specification must cater to different real-time programming styles. This generality is essential... more
    • by  and +1
Priority inversion is an important concern in providing robust synchronization in real-time systems. When a highpriority task attempts to acquire a lock held by a low priority task, it is often necessary to momentarily resume the... more
    • by 
    • Real Time Systems
This report documents the program and the outcomes of Dagstuhl Seminar 12011 on the "Foundations for Scripting Languages". The choice of "for" rather than "of" is intentional: it is our thesis that scripting languages are in need of... more
    • by 
Object-oriented programming techniques are known to improve the flexibility and reusability of certain kinds of software. Libraries of object classes, however, continue to be difficult both to develop and to reuse. We present an approach... more
    • by 
    • Object Oriented Programming
JavaSeal is a secure mobile agent kernel that provides a small and coherent set of abstractions for constructing agent applications. This paper describes the design of these abstractions and their implementation. We address the... more
    • by 
    •   8  
      Cognitive ScienceSoftware AgentsMulti-Agent Systems and Autonomous AgentsMobile Agents
High-level language virtual machines, e. g., for the Java programming language, offer a unique and challenging domain for aspects. This position paper motivates the need for an aspect-oriented language designed precisely for this domain.... more
    • by  and +1
    •   2  
      Aspect-Oriented ProgrammingAspect Oriented Programming
Computer systems research spans sub-disciplines that include embedded systems, programming languages and compilers, networking, and operating systems. Our contention is that a number of structural factors inhibit quality systems research.... more
    • by 
Stack-based languages, such as PostScript, present a major challenge to static analysis techniques because of their almost unlimited polymorphism. We introduce a regular expression notation that is used to represent allowed combinations... more
    • by 
    •   4  
      Cognitive ScienceAbstract InterpretationComputer LanguagesDetection Probability