86 resultados para descriptive name for hypothesised object


Relevância:

20.00% 20.00%

Publicador:

Relevância:

20.00% 20.00%

Publicador:

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Behavioral reflection is crucial to support for example functional upgrades, on-the-fly debugging, or monitoring critical applications. However the use of reflective features can lead to severe problems due to infinite metacall recursion even in simple cases. This is especially a problem when reflecting on core language features since there is a high chance that such features are used to implement the reflective behavior itself. In this paper we analyze the problem of infinite meta-object call recursion and solve it by providing a first class representation of meta-level execution: at any point in the execution of a system it can be determined if we are operating on a meta-level or base level so that we can prevent infinite recursion. We present how meta-level execution can be represented by a meta-context and how reflection becomes context-aware. Our solution makes it possible to freely apply behavioral reflection even on system classes: the meta-context brings stability to behavioral reflection. We validate the concept with a robust implementation and we present benchmarks.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Back-in-time debuggers are extremely useful tools for identifying the causes of bugs, as they allow us to inspect the past states of objects no longer present in the current execution stack. Unfortunately the "omniscient" approaches that try to remember all previous states are impractical because they either consume too much space or they are far too slow. Several approaches rely on heuristics to limit these penalties, but they ultimately end up throwing out too much relevant information. In this paper we propose a practical approach to back-in-time debugging that attempts to keep track of only the relevant past data. In contrast to other approaches, we keep object history information together with the regular objects in the application memory. Although seemingly counter-intuitive, this approach has the effect that past data that is not reachable from current application objects (and hence, no longer relevant) is automatically garbage collected. In this paper we describe the technical details of our approach, and we present benchmarks that demonstrate that memory consumption stays within practical bounds. Furthermore since our approach works at the virtual machine level, the performance penalty is significantly better than with other approaches.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

A large body of research analyzes the runtime execution of a system to extract abstract behavioral views. Those approaches primarily analyze control flow by tracing method execution events or they analyze object graphs of heap snapshots. However, they do not capture how objects are passed through the system at runtime. We refer to the exchange of objects as the object flow, and we claim that object flow is necessary to analyze if we are to understand the runtime of an object-oriented application. We propose and detail Object Flow Analysis, a novel dynamic analysis technique that takes this new information into account. To evaluate its usefulness, we present a visual approach that allows a developer to study classes and components in terms of how they exchange objects at runtime. We illustrate our approach on three case studies.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

As object-oriented languages are extended with novel modularization mechanisms, better underlying models are required to implement these high-level features. This paper describes CELL, a language model that builds on delegation-based chains of object fragments. Composition of groups of cells is used: 1) to represent objects, 2) to realize various forms of method lookup, and 3) to keep track of method references. A running prototype of CELL is provided and used to realize the basic kernel of a Smalltalk system. The paper shows, using several examples, how higher-level features such as traits can be supported by the lower-level model.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The rapid growth of object-oriented development over the past twenty years has given rise to many object-oriented systems that are large, complex and hard to maintain. Object-Oriented Reengineering Patterns addresses the problem of understanding and reengineering such object-oriented legacy systems. This book collects and distills successful techniques in planning a reengineering project, reverse-engineering, problem detection, migration strategies and software redesign. The material in this book is presented as a set of "reengineering patterns" --- recurring solutions that experts apply while reengineering and maintaining object-oriented systems. The principles and techniques described in this book have been observed and validated in a number of industrial projects, and reflect best practice in object-oriented reengineering.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

BACKGROUND There is weak evidence to support the benefit of periodontal maintenance therapy in preventing tooth loss. In addition, the effects of long-term periodontal treatment on general health are unclear. METHODS Patients who were compliant and partially compliant (15 to 25 years' follow-up) in private practice were observed for oral and systemic health changes. RESULTS A total of 219 patients who were compliant (91 males and 128 females) were observed for 19.1 (range 15 to 25; SD ± 2.8) years. Age at reassessment was 64.6 (range: 39 to 84; SD ± 9.0) years. A total of 145 patients were stable (0 to 3 teeth lost), 54 were downhill (4 to 6 teeth lost), and 21 patients extreme downhill (>6 teeth lost); 16 patients developed hypertension, 13 developed type 2 diabetes, and 15 suffered myocardial infarcts (MIs). A minority developed other systemic diseases. Risk factors for MI included overweight (odds ratio [OR]: 9.04; 95% confidence interval [CI]: 2.9 to 27.8; P = 0.000), family history with cardiovascular disease (OR: 3.10; 95% CI: 1.07 to 8.94; P = 0.029), type 1 diabetes at baseline (P = 0.02), and developing type 2 diabetes (OR: 7.9; 95% CI: 2.09 to 29.65; P = 0.000). A total of 25 patients who were partially compliant (17 males and eight females) were observed for 19 years. This group had a higher proportion of downhill and extreme downhill cases and MI. CONCLUSIONS Patients who left the maintenance program in a periodontal specialist practice in Norway had a higher rate of tooth loss than patients who were compliant. Patients who were compliant with maintenance in a specialist practice in Norway have a similar risk of developing type 2 diabetes as the general population. A rate of 0.0037 MIs per patient per year was recorded for this group. Due to the lack of external data, it is difficult to assess how this compares with patients who have periodontal disease and are untreated.