Thread support in most languages is opaque and low-level. Primitives like wait and signal do not allow users to determine the relative ordering of statements in different threads in advance. In this paper, we extend t...
详细信息
This paper illustrates several examples to discuss the teaching of C++ programming Language in colleges and universities and puts forward some ideas about how to inspire students who are learning C++ programming langu...
详细信息
In recent work we have shown how it is possible to define very precise type systems for objectoriented languages by abstractly compiling a program into a Horn formula f. Then type inference amounts to resolving a cert...
详细信息
The concept of multiple class inheritance is a feature that many object-orientedprogramming (OOP) languages have where a subclass can inherit behaviors (i.e. class methods and properties) from more than one superclas...
详细信息
ISBN:
(纸本)9782953050431
The concept of multiple class inheritance is a feature that many object-orientedprogramming (OOP) languages have where a subclass can inherit behaviors (i.e. class methods and properties) from more than one superclass. As the language is currently defined, a SystemVerilog subclass (child class) can only extend from a single superclass (parent class). This paper presents some of the problems having an OOP language lacking multiple inheritance, and suggests a solution.
Coinductive abstract compilation is a novel technique, which has been recently introduced, for defining precise type systems for object-oriented languages. In this approach, type inference consists in translating the ...
详细信息
object oriented programming is currently very much in focus and object-oriented languages (such as C++ and Java) are used as the first language to teach programming. The objectoriented concepts such as objects and in...
详细信息
ISBN:
(纸本)9789532330502
object oriented programming is currently very much in focus and object-oriented languages (such as C++ and Java) are used as the first language to teach programming. The objectoriented concepts such as objects and inheritance are difficult for understanding by novice programmers. The visualizations of examples of program code or programming tasks could help students to grasp programming structures more easily. The aim of this paper is to research the possibilities of enhancement of learning Java using the visualization software Jeliot.
There are two approaches for defining subtyping relations: the syntactic and the semantic one. In the semantic approach one starts from a model of the language of interest and an interpretation of types as subsets of ...
详细信息
There are two approaches for defining subtyping relations: the syntactic and the semantic one. In the semantic approach one starts from a model of the language of interest and an interpretation of types as subsets of the model. The subtyping relation is then defined as inclusion of sets denoting types. An orthogonal issue, typical of object-oriented languages, is the issue of nominal vs. structural subtyping. We aim to integrate structural subtyping with boolean connectives and semantic subtyping for a object-oriented core language and define a Java-like programming platform that exploits the benefits of both approaches, expressible in terms of code reuse and of compactness of program writing.
Making assertions about the program's control flow is important for reasoning purposes, e.g. ensuring that an advice proceeds to the original join point. Obliviousness of the base modules to the aspects in aspect ...
详细信息
ISBN:
(纸本)9781450302401
Making assertions about the program's control flow is important for reasoning purposes, e.g. ensuring that an advice proceeds to the original join point. Obliviousness of the base modules to the aspects in aspect oriented languages, like As-pectJ, makes it difficult to make such assertions in a modular manner. Base-aspect interfaces like crosscutting interfaces (XPIs), augmented with blackbox behavioral contracts save modularity of the reasoning process to some extent, but are not expressive enough to specify base-aspect control interactions in their full generality. Translucid contracts are proposed to specify and enforce typical control flow properties.
The wide spread interest in slicing of object-oriented software has led to the birth of number of algorithms. Nowadays, slicing of object-oriented programs has picked up the momentum as most of the real world programs...
详细信息
ISBN:
(纸本)9781605588124
The wide spread interest in slicing of object-oriented software has led to the birth of number of algorithms. Nowadays, slicing of object-oriented programs has picked up the momentum as most of the real world programs are object-oriented in nature. The algorithms which are available of-the-self, address different issues in their own ways. In this paper, we propose a new algorithm which incorporates graph coloring technique. But in order to compute the dynamic slice, we have contradicted some key constraints of graph coloring algorithm. The advantage of our algorithm is that it is faster and the process of computing slice can be optimized further. Copyright 2010 ACM.
In the area of scientific computing, abstraction was long said to be achievable only in exchange for run time efficiency. With the rise of template metaprogramming [1] in C++ in the 1990s, run time efficiency comparab...
详细信息
暂无评论