The number of approaches existing to enable a smooth interaction between Java and Prolog programs testifies the growing interest in solutions that combine the strengths of both languages. Most of these approaches prov...
详细信息
The number of approaches existing to enable a smooth interaction between Java and Prolog programs testifies the growing interest in solutions that combine the strengths of both languages. Most of these approaches provide limited support to allow programmers to customise how Prolog artefacts should be reified in the Java world, or how to reason about Java objects on the Prolog side. This is an error-prone task since often a considerable amount of mappings must be developed and organised. Furthermore, appropriate mappings may depend on the particular context in which a conversion is accomplished. Although some libraries alleviate this problem by providing higher-level abstractions to deal with the complexity of custom conversions between artefacts of the two languages, such libraries are difficult to implement and evolve, because of a lack of appropriate underlying building blocks for encapsulating, categorising and applying Java-Prolog conversion routines. We therefore introduce a new library, JPC, serving as a development tool for both programmers willing to categorise context-dependent conversion constructs in their Java-Prolog systems, and for architects implementing frameworks providing higher-level abstractions for better interoperability between these two languages. (C) 2015 Elsevier B.V. All rights reserved.
Purpose The purpose of this paper is to describe further developments on a novel formulation of the boundary element method (BEM) for inelastic problems using the dual reciprocity method (DRM) but using object-oriente...
详细信息
Purpose The purpose of this paper is to describe further developments on a novel formulation of the boundary element method (BEM) for inelastic problems using the dual reciprocity method (DRM) but using object-oriented programming (OOP). As the BEM formulation generates a domain integral due to the inelastic stresses, the DRM is employed in a modified form using polyharmonic spline approximating functions with polynomial augmentation. These approximating functions produced accurate results in BEM applications for a range of problems tested, and have been shown to converge linearly as the order of the function increases. Design/methodology/approach A programming class named DRMOOP, written in C++ language and based on OOP, was developed in this research. With such programming, general matrix equations can be easily established and applied to different inelastic problems. A vector that accounts for the influence of the inelastic strains on the displacements and boundary forces is obtained. Findings The C++ DRMOOP class has been implemented and tested with the BEM formulation applied to classical elastoplastic problem and the results are reported at the end of the paper. Originality/value An object-oriented technology and the C++ DRMOOP class applied to elastoplastic problems.
Understanding source code is an important task in the maintenance of software systems. Legacy systems are not only limited to procedural languages, but are also written in object-oriented languages. In such a context,...
详细信息
Understanding source code is an important task in the maintenance of software systems. Legacy systems are not only limited to procedural languages, but are also written in object-oriented languages. In such a context, understanding classes is a key activity as they are the cornerstone of the object-oriented paradigm and the primary abstraction from which applications are built. Such an understanding is however difficult to obtain because of reasons such as the presence of late binding and inheritance. A first level of class understanding consists of the understanding of its overall structure, the control flow among its methods, and the accesses on its attributes. We propose a novel visualization of classes called class blueprint that is based on a semantically enriched visualization of the internal structure of classes. This visualization allows a software engineer to build a first mental model of a class that he validates via opportunistic code-reading. Furthermore, we have identified visual patterns that represent recurrent situations and as such convey additional information to the viewer. The contributions of this article are the class blueprint, a novel visualization of the internal structure of classes, the identification of visual patterns, and the definition of a vocabulary based on these visual patterns. We have performed several case studies of which one is presented in depth, and validated the usefulness of the approach in a controlled experiment.
The difficulties present in the teaching object-oriented programming and Intelligent Tutoring Systems are exposed in this article. The usefulness of Intelligent Tutoring Systems taking into account technical data mini...
详细信息
The difficulties present in the teaching object-oriented programming and Intelligent Tutoring Systems are exposed in this article. The usefulness of Intelligent Tutoring Systems taking into account technical data mining, among which include artificial neural networks, is explained. The author proposes a model, using data mining techniques, to extract and to analyze information from student interactions inside the platform in the teaching-learning process. The model takes into account the predominant types of intelligence in each student, in order to achieve more individualized solutions. An experiment was employed in order to measure system effectiveness, considering decrease in wrong attempts doing an exercise as a success criterion. The results show a positive impact in solving problems, improving the learning process.
Reactive transport modeling contributes to understand geophysical and geochemical processes in subsurface environments. Operator splitting methods have been proposed as non-intrusive coupling techniques that optimize ...
详细信息
Reactive transport modeling contributes to understand geophysical and geochemical processes in subsurface environments. Operator splitting methods have been proposed as non-intrusive coupling techniques that optimize the use of existing chemistry and transport codes. In this spirit, we propose a coupler relying on external geochemical and transport codes with appropriate operator segmentation that enables possible developments of additional splitting methods. We provide an object-oriented implementation in TReacLab developed in the MATLAB environment in a free open source frame with an accessible repository. TReacLab contains classical coupling methods, template interfaces and calling functions for two classical transport and reactive software (PHREEQC and COMSOL). It is tested on four classical benchmarks with homogeneous and heterogeneous reactions at equilibrium or kinetically-controlled. We show that full decoupling to the implementation level has a cost in terms of accuracy compared to more integrated and optimized codes. Use of non-intrusive implementations like TReacLab are still justified for coupling independent transport and chemical software at a minimal development effort but should be systematically and carefully assessed.
The authors' technique for process definition demonstrates practical value beyond direct project planning and risk mitigation: using object-oriented technology metaphors, it can express responsibilities and collab...
详细信息
The authors' technique for process definition demonstrates practical value beyond direct project planning and risk mitigation: using object-oriented technology metaphors, it can express responsibilities and collaborations among work units as classes. The technique yields a detailed Mark breakdown structure, accelerates development of more concise contrast language for follow-up work, improves level-of-effort estimates for future work, and enables continuous process improvement. The process definition technique also introduces team members to OOT principles and concepts.
The location of corridors or fights-of-way across a landscape for the purpose of siting a facility such as a power transmission line has been the subject of much research. Many different computerized models have been ...
详细信息
The location of corridors or fights-of-way across a landscape for the purpose of siting a facility such as a power transmission line has been the subject of much research. Many different computerized models have been developed to address this design and layout problem. Any environmental review usually requires that alternative routes be considered. Thus, the value of a model can be measured not only in terms of determining a good solution but in supporting the search for good alternatives as well. Such problems have been posed as multiobjective programming models. This paper presents a novel user interface that is designed to help explore possible alternative corridors. This new interface allows for exploration in terms of both objective space and decision space and could be modified for other spatial decision-making problems as well.
Since the introduction of Smalltalk, the object-oriented approach towards the organization of data and programs has become popular. In this paper the possibilities of exploiting procedure-oriented languages to allow a...
详细信息
Since the introduction of Smalltalk, the object-oriented approach towards the organization of data and programs has become popular. In this paper the possibilities of exploiting procedure-oriented languages to allow an object-oriented style of programming are analysed. Although the two approaches are apparently dissimilar, a family of procedure-oriented languages is described which allows a high degree of freedom in programming and does not appear to restrain the programmer within the procedure-oriented scheme. Popular languages of this family are ML and PS-Algol. For such languages, a technique is developed which enables an efficient implementation of object-oriented features, such as the subclassing form of inheritance provided by Smalltalk-80 and Simula.
The only built-in mechanism for data movement in most modern programming languages is the assignment statement for copying the value of one variable to another. In the context of reusable software components, this rel...
详细信息
The only built-in mechanism for data movement in most modern programming languages is the assignment statement for copying the value of one variable to another. In the context of reusable software components, this reliance on copying leads to two classes of difficulties: components whose implementations are inherently inefficient, and client programs that are hard to reason about. A powerful substitute for copying as the primary data movement primitive is a swapping mechanism that exchanges the values of two variables. Reusable components and client programs designed with a "swapping style" of programming have many advantages over designs based on the traditional "copying style," including improved execution efficiency, higher reliability, and enhanced reusability.
On-demand collective irrigation networks are hydraulic systems designed to deliver and distribute irrigation water from the water source to the irrigation perimeter, while providing users with the flexibility to decid...
详细信息
On-demand collective irrigation networks are hydraulic systems designed to deliver and distribute irrigation water from the water source to the irrigation perimeter, while providing users with the flexibility to decide on the time, the duration and the frequency with which they intend to use their hydrant. This paper presents the newly developed software NIREUS, which is developed for implementing the performance analysis of such networks. The performance analysis with NIREUS gives an overview of the operational status of the network under study by implementing the model of the indexed characteristic curves, while on the other hand, NIREUS determines the pipes/hydrants of the network that present, or are most likely to present, operational problems by implementing the performance analysis at hydrant level. This information is particularly useful for the management of existing networks as well as for the planning of future interventions and rehabilitation activities. The paper also describes the main functions of NIREUS and the characteristics that differentiate it from other existing software. Moreover, a new indicator which is incorporated in NIREUS is presented, in which the whole magnitude of the operational efficiency of a hydrant is depicted. The validation of the new software is made through a comparative application of NIREUS and COPAM to an existing on-demand pressurized collective irrigation network. Results proved the usefulness of NIREUS in highlighting both the weak and the strong parts of the network. The validation procedure gave a very close approximation of the respective values calculated with COPAM with the relative error ranging between 0.0% to 0.36% for the indexed characteristic curve of C50 and 0.01% to 0.22% for the indexed characteristic curves of C70. (C) 2017 Elsevier B.V. All rights reserved.
暂无评论