Pervasive Computing advocates the enhancement of physical spaces with computing and communication resources that help users perform various kinds of tasks. We call these enhanced physical spaces Active Spaces. Active ...
详细信息
ISBN:
(纸本)0769522998
Pervasive Computing advocates the enhancement of physical spaces with computing and communication resources that help users perform various kinds of tasks. We call these enhanced physical spaces Active Spaces. Active Spaces are highly dynamic - the context and resources available in these environments can change rapidly. The large number of entities present in these spaces and the dynamism associated with them make it difficult for developers to program these environments. It is not always clear at development time which resources are to be used for performing various kinds of tasks and how to use them. In this paper, we introduce a new high-level programming model for pervasive computing environments, Olympus. The main feature of this model is that developers can specify Active Space entities and common Active Space operations at an abstract, high level. Active Space entities (which include services, applications, devices, physical objects, locations and users) can be specified using high level descriptions. Our framework resolves these descriptions into actual Active Space entities based on constraints specified by the developer, ontological descriptions of entities, the resources available in the current space, space-level policies and the current context of the space. The programming model also provides the developers with operators for commonly used functions. Examples of operators include start, stop and move components. Thus, developers do not have to worry about how various tasks are performed in the space in which their program is to be deployed. These details are taken care of by the model and the developer is free to focus on the actual logic of the program. In this paper, we discuss the programming model, its implementation and several example Active Space programs that have been developed using this model.
A common trend in programming language specification is to generate various tools (e.g., compiler, editor, profiler, and debugger) from a grammar. In such a generative approach, it is desirable to have the definition ...
详细信息
ISBN:
(纸本)9781581139648
A common trend in programming language specification is to generate various tools (e.g., compiler, editor, profiler, and debugger) from a grammar. In such a generative approach, it is desirable to have the definition of a programming language be modularized according to specific concerns specified in the grammar. However, it is often the case that the corresponding properties of the generated tools are scattered and tangled across the language specification. In this paper, separation of concerns within a programming language specification is demonstrated by considering debugging support within a domain-specific language (DSL). The paper first describes the use of AspectJ to weave the debugging semantics into the code created by a parser generator. The paper outlines several situations when the use of AspectJ is infeasible at separating language specification properties. To accommodate such situations, a second approach is presented that weaves the debugging support directly into a grammar specification using a program transformation engine. A case study for a simple DSL is presented to highlight the benefits of weaving across language specifications defined by grammars. Copyright 2005 ACM.
A mutation-based validation paradigm that can handle complete high-level microprocessor implementations is presented. First, a control-based covet-age measure is presented that is aimed at exposing design errors that ...
详细信息
ISBN:
(纸本)0780395719
A mutation-based validation paradigm that can handle complete high-level microprocessor implementations is presented. First, a control-based covet-age measure is presented that is aimed at exposing design errors that incorrectly set control signal values. A method of automatically;generating a complete set of modeled errors from this coverage metric is presented such that the instantiated modeled errors harness the rules of cause-and-effect that define mutation-based error models. Finally, we introduce a new automatic test pattern generation technique for high-level hardware descriptions that solves multiple concurrent constraints and is empowered by concurrent programming.
With the advent of compositional programming models in computer science, applying planning technologies to automatically build workflows for solving large and complex problems in such a paradigm becomes not only techn...
详细信息
Program analysis is essential for the optimized compilation of Constraint Handling Rules (CHRs) as well as the inference of behavioral properties such as confluence and termination. Up to now all program analyses for ...
详细信息
ISBN:
(纸本)1595930906
Program analysis is essential for the optimized compilation of Constraint Handling Rules (CHRs) as well as the inference of behavioral properties such as confluence and termination. Up to now all program analyses for CHRs have been developed in an ad hoc fashion. In this work we bring the general program analysis methodology of abstract interpretation to CHRs: we formulate an abstract interpretation framework over the call-based operational semantics of CHRs. The abstract interpretation framework is non-obvious since it needs to handle the highly non-deterministic execution of CHRs. The use of the framework is illustrated with two instantiations: the CHR-specific late storage analysis and the more generally known groundness analysis. In addition, we discuss optimizations based on these analyses and present experimental results. Copyright 2005 ACM.
We design a calculus where objects are created by instantiating classes, as well as mixins. Mixin-instantiated objects are "incomplete objects", that can be completed in object-based fashion. The combination...
详细信息
ISBN:
(纸本)9781581139648
We design a calculus where objects are created by instantiating classes, as well as mixins. Mixin-instantiated objects are "incomplete objects", that can be completed in object-based fashion. The combination of class-based features with object-based ones offers some flexible programming solutions. The fact that all objects are created from fully-typed constructs is a guarantee of controlled (therefore reasonably safe) behavior. Copyright 2005 ACM.
In agile methodologies communication between programmers is very important. Some of them (e.g. XP or Crystal Clear) recommend pair programming. There are two styles of pair programming: XP-like and side-by-side (the l...
详细信息
Consistent Global States (CGS) detection is a costly process. If CGS are constructed using real-time timestamps, then their hierarchical detection is possible. In a hierarchical detection scheme the load of a single c...
详细信息
ISBN:
(纸本)0769520804
Consistent Global States (CGS) detection is a costly process. If CGS are constructed using real-time timestamps, then their hierarchical detection is possible. In a hierarchical detection scheme the load of a single central monitor is distributed among a number of monitors. We show, that hierarchical CGS detection has advantages over centralized detection: it allows for online monitoring of larger systems and for a more effective application control based on observed CGS. Hierarchical CGS detection can be coupled with a hierarchical application control scheme for better results. Further improvement is obtained if a timeout mechanism allows unterminated local states to be used for CGS construction. Relevant algorithms and simulation results are presented and discussed.
In an attempt to devise a general notion of model for spatial logic, we have been led to consider transition systems with an additional so-called spatial structure on the states, with both the tran- sition and the spa...
详细信息
View-Centric Reasoning (VCR) replaces CSP's perfect observer with multiple, possibly imperfect observers. To employ view-centric reasoning within existing CSP models requires a bookkeeping change. Specifically, VC...
详细信息
View-Centric Reasoning (VCR) replaces CSP's perfect observer with multiple, possibly imperfect observers. To employ view-centric reasoning within existing CSP models requires a bookkeeping change. Specifically, VCR introduces parallel events as a new primitive for constructing traces, and distinguishes two types of traces: histories and views. Previously, we gave the operational semantics of VCR, and demonstrated the utility of parallel traces to reason for the first time unambiguously about the meaning of the Linda predicate operations rdp ( ) and inp ( ). The choice of using an operational semantics to describe VCR makes direct comparison with CSP difficult;therefore, work is ongoing to recast VCR denotationally, then link VCR with the other CSP models within Hoare and He's Unifying Theories of programming. Initial efforts in this direction led to a comparison of VCR with Lawrence's HCSP. In this paper, we present some recent insights and abstractions - inspired by modern quantum physics - that have emerged whilst contemplating parallel traces in light of the unifying theories. These insights lead to a more natural expression of VCR. traces, in the sense that they more closely resemble CSP traces, thus forming a basis for linking VCR and CSP.
暂无评论