24 resultados para Genericity
Resumo:
Let N = {y > 0} and S = {y < 0} be the semi-planes of R-2 having as common boundary the line D = {y = 0}. Let X and Y be polynomial vector fields defined in N and S, respectively, leading to a discontinuous piecewise polynomial vector field Z = (X, Y). This work pursues the stability and the transition analysis of solutions of Z between N and S, started by Filippov (1988) and Kozlova (1984) and reformulated by Sotomayor-Teixeira (1995) in terms of the regularization method. This method consists in analyzing a one parameter family of continuous vector fields Z(epsilon), defined by averaging X and Y. This family approaches Z when the parameter goes to zero. The results of Sotomayor-Teixeira and Sotomayor-Machado (2002) providing conditions on (X, Y) for the regularized vector fields to be structurally stable on planar compact connected regions are extended to discontinuous piecewise polynomial vector fields on R-2. Pertinent genericity results for vector fields satisfying the above stability conditions are also extended to the present case. A procedure for the study of discontinuous piecewise vector fields at infinity through a compactification is proposed here.
Resumo:
Generic programming is likely to become a new challenge for a critical mass of developers. Therefore, it is crucial to refine the support for generic programming in mainstream Object-Oriented languages — both at the design and at the implementation level — as well as to suggest novel ways to exploit the additional degree of expressiveness made available by genericity. This study is meant to provide a contribution towards bringing Java genericity to a more mature stage with respect to mainstream programming practice, by increasing the effectiveness of its implementation, and by revealing its full expressive power in real world scenario. With respect to the current research setting, the main contribution of the thesis is twofold. First, we propose a revised implementation for Java generics that greatly increases the expressiveness of the Java platform by adding reification support for generic types. Secondly, we show how Java genericity can be leveraged in a real world case-study in the context of the multi-paradigm language integration. Several approaches have been proposed in order to overcome the lack of reification of generic types in the Java programming language. Existing approaches tackle the problem of reification of generic types by defining new translation techniques which would allow for a runtime representation of generics and wildcards. Unfortunately most approaches suffer from several problems: heterogeneous translations are known to be problematic when considering reification of generic methods and wildcards. On the other hand, more sophisticated techniques requiring changes in the Java runtime, supports reified generics through a true language extension (where clauses) so that backward compatibility is compromised. In this thesis we develop a sophisticated type-passing technique for addressing the problem of reification of generic types in the Java programming language; this approach — first pioneered by the so called EGO translator — is here turned into a full-blown solution which reifies generic types inside the Java Virtual Machine (JVM) itself, thus overcoming both performance penalties and compatibility issues of the original EGO translator. Java-Prolog integration Integrating Object-Oriented and declarative programming has been the subject of several researches and corresponding technologies. Such proposals come in two flavours, either attempting at joining the two paradigms, or simply providing an interface library for accessing Prolog declarative features from a mainstream Object-Oriented languages such as Java. Both solutions have however drawbacks: in the case of hybrid languages featuring both Object-Oriented and logic traits, such resulting language is typically too complex, thus making mainstream application development an harder task; in the case of library-based integration approaches there is no true language integration, and some “boilerplate code” has to be implemented to fix the paradigm mismatch. In this thesis we develop a framework called PatJ which promotes seamless exploitation of Prolog programming in Java. A sophisticated usage of generics/wildcards allows to define a precise mapping between Object-Oriented and declarative features. PatJ defines a hierarchy of classes where the bidirectional semantics of Prolog terms is modelled directly at the level of the Java generic type-system.
Resumo:
Subtype polymorphism is a cornerstone of object-oriented programming. By hiding variability in behavior behind a uniform interface, polymorphism decouples clients from providers and thus enables genericity, modularity and extensi- bility. At the same time, however, it scatters the implementation of the behavior over multiple classes thus potentially hampering program comprehension. The extent to which polymorphism is used in real programs and the impact of polymorphism on program comprehension are not very well understood. We report on a preliminary study of the prevalence of polymorphism in several hundred open source software systems written in Smalltalk, one of the oldest object-oriented programming languages, and in Java, one of the most widespread ones. Although a large portion of the call sites in these systems are polymorphic, a majority have a small number of potential candidates. Smalltalk uses polymorphism to a much greater extent than Java. We discuss how these findings can be used as input for more detailed studies in program comprehension and for better developer support in the IDE.
Resumo:
Thesis (Ph.D.)--University of Washington, 2016-08
Resumo:
Heterogeneity has to be taken into account when integrating a set of existing information sources into a distributed information system that are nowadays often based on Service- Oriented Architectures (SOA). This is also particularly applicable to distributed services such as event monitoring, which are useful in the context of Event Driven Architectures (EDA) and Complex Event Processing (CEP). Web services deal with this heterogeneity at a technical level, also providing little support for event processing. Our central thesis is that such a fully generic solution cannot provide complete support for event monitoring; instead, source specific semantics such as certain event types or support for certain event monitoring techniques have to be taken into account. Our core result is the design of a configurable event monitoring (Web) service that allows us to trade genericity for the exploitation of source specific characteristics. It thus delivers results for the areas of SOA, Web services, CEP and EDA.
Resumo:
This article discusses event monitoring options for heterogeneous event sources as they are given in nowadays heterogeneous distributed information systems. It follows the central assumption, that a fully generic event monitoring solution cannot provide complete support for event monitoring; instead, event source specific semantics such as certain event types or support for certain event monitoring techniques have to be taken into account. Following from this, the core result of the work presented here is the extension of a configurable event monitoring (Web) service for a variety of event sources. A service approach allows us to trade genericity for the exploitation of source specific characteristics. It thus delivers results for the areas of SOA, Web services, CEP and EDA.
Resumo:
The persistence concern implemented as an aspect has been studied since the appearance of the Aspect-Oriented paradigm. Frequently, persistence is given as an example that can be aspectized, but until today no real world solution has applied that paradigm. Such solution should be able to enhance the programmer productivity and make the application less prone to errors. To test the viability of that concept, in a previous study we developed a prototype that implements Orthogonal Persistence as an aspect. This first version of the prototype was already fully functional with all Java types including arrays. In this work the results of our new research to overcome some limitations that we have identified on the data type abstraction and transparency in the prototype are presented. One of our goals was to avoid the Java standard idiom for genericity, based on casts, type tests and subtyping. Moreover, we also find the need to introduce some dynamic data type abilities. We consider that the Reflection is the solution to those issues. To achieve that, we have extended our prototype with a new static weaver that preprocesses the application source code in order to introduce changes to the normal behavior of the Java compiler with a new generated reflective code.
Resumo:
Les bergères de l'Apocalypse est le récit de la protagoniste Ariane qui projette de réécrire, en marge du discours officiel, les événements qui ont conduit à la création d'une société gynocentrique. À la diversité des préoccupations qui alimentent cette vision utopiste de la société répond une indétermination générique qui rend le récit difficile à classer. Mettant en scène une société idéale qui n'en est pas une (puisque les femmes, après l'extermination des hommes, ont reproduit certaines structures de pouvoir patriarcales), l’ouvrage ne peut pas être identifié uniquement comme un roman de science-fiction puisqu'il emprunte à la fois à l'essai, à l’utopie féministe et au récit apocalyptique. Cette hybridation apparaît comme l’un des traits de cet ouvrage éclaté qui multiplie les techniques narratives et les récits dans un cadre où l’intertextualité joue un rôle important. L'hypothèse que je propose pour expliquer une telle variation générique est que le roman représente ici une forme modulable qui marie à la complexité des propositions apportées au discours féministe ambiant. Grâce au mélange des genres et des discours, l'auteure, à travers Ariane, parvient à dialoguer avec une panoplie d'intertextes dont le contrepoint original et touffu ne peut que déconcerter la lectrice. Afin d'analyser le roman, j'observerai comment l’oeuvre exploite les potentiels de généricité dans la forme, les techniques narratives, leur liens avec les motifs écoféministes, ainsi que le mode d'inscription des différents discours.
Resumo:
Les bergères de l'Apocalypse est le récit de la protagoniste Ariane qui projette de réécrire, en marge du discours officiel, les événements qui ont conduit à la création d'une société gynocentrique. À la diversité des préoccupations qui alimentent cette vision utopiste de la société répond une indétermination générique qui rend le récit difficile à classer. Mettant en scène une société idéale qui n'en est pas une (puisque les femmes, après l'extermination des hommes, ont reproduit certaines structures de pouvoir patriarcales), l’ouvrage ne peut pas être identifié uniquement comme un roman de science-fiction puisqu'il emprunte à la fois à l'essai, à l’utopie féministe et au récit apocalyptique. Cette hybridation apparaît comme l’un des traits de cet ouvrage éclaté qui multiplie les techniques narratives et les récits dans un cadre où l’intertextualité joue un rôle important. L'hypothèse que je propose pour expliquer une telle variation générique est que le roman représente ici une forme modulable qui marie à la complexité des propositions apportées au discours féministe ambiant. Grâce au mélange des genres et des discours, l'auteure, à travers Ariane, parvient à dialoguer avec une panoplie d'intertextes dont le contrepoint original et touffu ne peut que déconcerter la lectrice. Afin d'analyser le roman, j'observerai comment l’oeuvre exploite les potentiels de généricité dans la forme, les techniques narratives, leur liens avec les motifs écoféministes, ainsi que le mode d'inscription des différents discours.