The proceedings contain 27 papers. The topics discussed include: design patterns - 15 years later;codequest: scalable source code queries with datalog;efficient object querying for java;automatic perfetching by traver...
详细信息
ISBN:
(纸本)3540357262
The proceedings contain 27 papers. The topics discussed include: design patterns - 15 years later;codequest: scalable source code queries with datalog;efficient object querying for java;automatic perfetching by traversal profiling in object persistence architectures;the runtime structure of object ownership;on ownership and accessibility;scoped types and aspects for real-life Java;transparently reconciling transactions with locking for Java synchronization;object technology - a grand narrative?;the continuing quest for abstraction;early concurrent/mobile objects - modeling a simple post office;turning the network into a database with active XML;superglue: component programming with object-oriented signals;variance and generalized constraints for C# generics;automated detection of refactorings in evolving components;and managing the evolution of aspect-oriented software with model-based pointcuts.
LabVIEW programmers perform graphical object oriented programming with VI as the basic building block, which is comparable to a subroutine with multiple input and output parameters. LabVIEW uses its own defaults (such...
详细信息
LabVIEW programmers perform graphical object oriented programming with VI as the basic building block, which is comparable to a subroutine with multiple input and output parameters. LabVIEW uses its own defaults (such as making variable static), providing a basic form of encapsulation. Its object oriented programming is built around the Project Explorer, which also manages VI files in general. Most class VI methods pass the incoming object to an output port, so most of the object can be used in a series of calculations. LabVIEW designers have opted to force the use of get/put-style methods to expose internal data in the formal and global variables or uninitialized shift registers for the latter. LabVIEW classes only support private data, not public or protected as in Java and C++ and it also corresponds to virtual methods in other languages.
The present paper describes MOHID River Network (MRN), a 1D hydrodynamic model for river networks as part of MOHID Water Modelling System, which is a modular system for the simulation of water bodies (hydrodynamics an...
详细信息
The present paper describes MOHID River Network (MRN), a 1D hydrodynamic model for river networks as part of MOHID Water Modelling System, which is a modular system for the simulation of water bodies (hydrodynamics and water constituents). MRN is capable of simulating water quality in the aquatic and benthic phase and its development was especially focused on the reproduction of processes occurring in temporary river networks (flush events, pools formation, and transmission losses). Further, unlike many other models, it allows the quantification of settled materials at the channel bed also over periods when the river falls dry. These features are very important to secure mass conservation in highly varying flows of temporary rivers. The water quality models existing in MOHID are base on well-known ecological models, such as WASP and ERSEM, the latter allowing explicit parameterization of C, N, P, Si, and O cycles. MRN can be coupled to the basin model, MOHID Land, with computes runoff and porous media transport, allowing for the dynamic exchange of water and materials between the river and surroundings, or it can be used as a standalone model, receiving discharges at any specified nodes (ASCII files of time series with arbitrary time step). These features account for spatial gradients in precipitation which can be significant in Mediterranean-like basins. An interface has been already developed for SWAT basin model. (C) 2009 Elsevier B.V. All rights reserved.
Some object oriented programming languages allow inner classes. All of them admit inheritance. This combination of inner classes and inheritance is very fruitful however less known. On the other hand it creates a seri...
详细信息
Some object oriented programming languages allow inner classes. All of them admit inheritance. This combination of inner classes and inheritance is very fruitful however less known. On the other hand it creates a serious problem: how to determine the direct superclass of a given class C, i.e. the class which class C directly inherits from. For there may be several classes of the same name in one program. A specification of the problem and a non-deterministic algorithm are provided. We prove that the algorithm is correct w.r.t. the specification and complete, i.e. if the algorithm signals an error then no solution exists. We show that the specification itself has at most one solution, in other words, it is a complete specification. This proves also that the corresponding parts of Java Language Specification are consistent and define uniquely a fragment of Java semantics. (C) 2008 Elsevier Inc. All rights reserved.
The common availability of multi-core and networked computers means that there is an increasing need for effective software development methods in order to harness this available power. This paper describes the use of...
详细信息
The common availability of multi-core and networked computers means that there is an increasing need for effective software development methods in order to harness this available power. This paper describes the use of component oriented methods both in the design and deployment of numerical software. The use of interfaces enables both isolation of areas of complexity and physical separation between client and server code. Three methods of deployment of distributed software are considered. Techniques developed for mobile agents were used to implement a method whereby hosts reside on various remote computers, and client programs then send assemblies (partially compiled code) to the hosts as required. The methods are applicable for both direct and iterative methods of equation solution. (C) 2008 Elsevier Ltd. All rights reserved.
Industrial programmable logic controllers (PLCs), however, are still mostly programmed in the languages of the International Electrotechnical Commission (IEC) 61131-3 standard. To meet the challenges of modern industr...
详细信息
Industrial programmable logic controllers (PLCs), however, are still mostly programmed in the languages of the International Electrotechnical Commission (IEC) 61131-3 standard. To meet the challenges of modern industrial automation, it is therefore only logical to add OOP to the upcoming third edition of the standard. At the moment, an IEC 61131-3 maintenance group is discussing a working draft of this next edition. This draft contains a proposal for object-oriented extensionsto be added to the IEC 61131-3. This article refers to this proposal. It is, however, a fact that the standardization in regards to OOP is still at an early stage, and it is quite possible that this article may differ from the final edition of the IEC standard.
A session takes place between two parties;after establishing a connection, each party interleaves local computations and communications (sending or receiving) with the other. Session types characterise such sessions i...
详细信息
A session takes place between two parties;after establishing a connection, each party interleaves local computations and communications (sending or receiving) with the other. Session types characterise such sessions in terms of the types of values communicated and the shape of protocols, and have been developed for the pi-calculus, CORBA interfaces, and functional languages. We study-the incorporation of session types into object-oriented languages through MOOSE, a multi-threaded language with session types, thread spawning, iterative, and higher-order sessions. Our design aims to consistently integrate the object-orientedprogramming style and sessions, and to be able to treat various case studies from the literature. We describe the design of MOOSE, its syntax, operational semantics, and type system, and develop a type inference system. After proving subject reduction, we establish the progress property: once a communication has been established, well-typed programs will never starve at communication points. (C) 2009 Elsevier Inc. All rights reserved.
In "The Golden Age of Software Architecture" Paul Clements and Mary Shaw reviewed the emergence of software architecture as the principled understanding of the large-scale structures of software systems. Her...
详细信息
In "The Golden Age of Software Architecture" Paul Clements and Mary Shaw reviewed the emergence of software architecture as the principled understanding of the large-scale structures of software systems. Here they reflect on progress since that article, updating the state of practice and reassessing some of the opportunities.
Java is widely applied in mobile devices and network applications due to its object-oriented features and corresponding advantages such as security, robustness, platform independence. However, almost all the current J...
详细信息
Java is widely applied in mobile devices and network applications due to its object-oriented features and corresponding advantages such as security, robustness, platform independence. However, almost all the current Java processors do not provide enough hardware support on object-orientedprogramming so that the object-oriented related operations are performed by software traps or microcode. Their performance of executing Java program is not well, especially for memory-constraint mobile devices. In this paper, a Java processor architecture named jHISC is proposed, which implements the features of object-orientedprogramming by hardware directly and executes the object-oriented instructions much faster
暂无评论