The search for sound principles for object-oriented languages has given rise to considerable research during the last few decades, leading to a better understanding of the key concepts of object-oriented languages and...
详细信息
ISBN:
(纸本)9781450315630
The search for sound principles for object-oriented languages has given rise to considerable research during the last few decades, leading to a better understanding of the key concepts of object-oriented languages and to important developments in type theory, semantics, program verification, and program development. The purpose of this workshop is to provide a forum for discussing new ideas in the foundations of object-oriented languages and provide feedback to authors. Submissions to this workshop were invited in the general area of foundations of object-oriented languages, object-oriented languages, including integration with other paradigms and extensions, such as aspects, components, and meta-programming.
Debugging parallel and concurrent applications is well-recognized as a time-consuming task, which often requires a significant part of the application development process. In the context of embedded systems, Multi-Pro...
详细信息
Debugging parallel and concurrent applications is well-recognized as a time-consuming task, which often requires a significant part of the application development process. In the context of embedded systems, Multi-Processor-System-on-Chip(MPSoC) architectures feature numerous multicore processors which may be coupled with heterogeneous processors like Digital Signal Processors (DSPs) and/or application-specific accelerators. In this situation, it is important that developers are provided with high-level programming environments able to efficiently exploit these architectures, as well as suitable debugging tools. Dataflow programming models were explicitly designed to program parallel architectures and they have the ability to abstract away heterogeneous computing complexity. In addition, the stream-processing aspect of multimedia algorithms naturally exhibits data-dependency graphs, which simplifies application design and implementation. In this paper, we propose a new approach for interactive debugging of dataflow applications. Going beyond the long-established ability of interactive debuggers to support sequential programming languages, we describe the functionalities they should be able to provide to debug embedded and parallel dataflow applications. Then we demonstrate our solution to this problem with a proof-of-concept debugger targeting the dataflow framework used on an industrial MPSoC platform. We also explain the development challenges we faced during the implementation of this GDB-based debugger and illustrate its efficiency through a case study of a video decoder debugging session.
We present CIRSIUM, a CIRcuit SImulator Using MATLAB ® and its objectorientedprogramming language. CIRSIUM has been developed as a flexible and modular framework in order to enable the rapid development of new...
详细信息
We present CIRSIUM, a CIRcuit SImulator Using MATLAB ® and its objectorientedprogramming language. CIRSIUM has been developed as a flexible and modular framework in order to enable the rapid development of new device models and prototyping of new circuit analysis paradigms and algorithms. The modular core code includes the PSP MOSFET compact model and uses SUNDIALS for the solution of dynamical circuit equations. New device models can be added by supplying their stamps in vector/matrix form, and existing models can be translated from the Verilog-A hardware description language using ADMS that automatically computes the necessary Jacobians. CIRSIUM has been initially developed for the analysis of random telegraph signal (RTS) noise in nano-scale integrated circuits. For this purpose, the PSP MOSFET compact model has been expanded with a detailed, non-stationary RTS noise model, that includes a physical description of gate oxide defects and the calculation of their voltage and position dependent capture/emission time constants. Future applications of CIRSIUM will include non-electronic systems, such as noise modeling and analysis for biological neurons, neuronal networks and the nervous system.
We are interested in re-engineering families of legacy applications towards using Domain-Specific languages (DSLs). Is it worth to invest in harvesting domain knowledge from the source code of legacy applications? Rev...
详细信息
ISBN:
(纸本)9781467352185
We are interested in re-engineering families of legacy applications towards using Domain-Specific languages (DSLs). Is it worth to invest in harvesting domain knowledge from the source code of legacy applications? Reverse engineering domain knowledge from source code is sometimes considered very hard or even impossible. Is it also difficult for "modern legacy systems"? In this paper we select two open-source applications and answer the following research questions: which parts of the domain are implemented by the application, and how much can we manually recover from the source code? To explore these questions, we compare manually recovered domain models to a reference model extracted from domain literature, and measured precision and recall. The recovered models are accurate: they cover a significant part of the reference model and they do not contain much junk. We conclude that domain knowledge is recoverable from "modern legacy" code and therefore domain model recovery can be a valuable component of a domain re-engineering process.
Classical programming approaches are no longer enough to implement and integrate evolved control software for Industrial Automation systems (IASs). The multidisciplinary implementation of increasingly-sophisticated IA...
详细信息
Classical programming approaches are no longer enough to implement and integrate evolved control software for Industrial Automation systems (IASs). The multidisciplinary implementation of increasingly-sophisticated IAS capabilities makes developers look for more effective methodologies to efficiently design, build, and evaluate such software. This paper identifies gaps in the development process of IASs. Filling these gaps can help improving the coding of IAS control applications by overcoming current development limitations. This paper argues for a requirements-driven development process and an interactive integration framework to mitigate drawbacks set by engineering tools. It shows gaps given by what current tools can provide and what is needed.
The way programming languages manage memory has been a hot topic for many years. languages with garbage collection (GC) removed the burden of memory management from developers. Typically the garbage collection infrast...
详细信息
This paper presents the state of the art in the development of Semantic-Web-enabled software using object-orientedprogramming languages. object triple mapping (OTM) is a frequently used method to simplify the develop...
详细信息
This paper presents the state of the art in the development of Semantic-Web-enabled software using object-orientedprogramming languages. object triple mapping (OTM) is a frequently used method to simplify the development of such software. A case study that is based on interviews with developers of OTM frameworks is presented at the core of this paper. Following the results of the case study, the formalization of OTM is kept separate from optional but desirable extensions of OTM with regard to metadata, schema matching, and integration into the Semantic-Web infrastructure. The material that is presented is expected to not only explain the development of Semantic-Web software by the usage of OTM, but also explain what properties of Semantic-Web software made developers come up with OTM. Understanding the latter will be essential to get nonexpert software developers to use Semantic-Web technologies in their software.
Designing, developing, and maintaining control software is often a complex and difficult task, especially in larger projects. The paper presents a concept of applying the Model-Driven Development approach with SysML m...
详细信息
Designing, developing, and maintaining control software is often a complex and difficult task, especially in larger projects. The paper presents a concept of applying the Model-Driven Development approach with SysML modeling to the IEC 61131-3 development process. Four types of diagrams are used to model different aspects of the system: Requirements Diagram, Package Diagram, Block Definition Diagram, and State Machine Diagram. The models represent POUs and their requirements, resources, and tasks. Some POUs can be modeled as state machines as well. The SysML diagrams can be used to generate code templates for the implementation in IEC 61131-3 languages, such as ST or FBD. The paper also describes an extension to the CPDev engineering environment, which integrates the proposed SysML modeling with programming and execution of IEC 61131-3 software. The example of an engine and pump control system is presented to show various stages of the proposed approach.
A big source of run-time performance problems in large-scale, object-orientedapplications is the frequent creation of data structures (by the same allocation site) whose lifetimes are disjoint, and whose shapes and d...
详细信息
ISBN:
(纸本)9781450315616
A big source of run-time performance problems in large-scale, object-orientedapplications is the frequent creation of data structures (by the same allocation site) whose lifetimes are disjoint, and whose shapes and data content are always the same. Constructing these data structures and computing the same data values many times is expensive;significant performance improvements can be achieved by reusing their instances, shapes, and/or data values rather than reconstructing them. This paper presents a run-time technique that can be used to help programmers find allocation sites that create such data structures to improve performance. At the heart of the technique are three reusability definitions and novel summarization approaches that compute summaries for data structures based on these definitions. The computed summaries are used subsequently to find data structures that have disjoint lifetimes, and/or that have the same shapes and content. We have implemented this technique in the Jikes RVM and performed extensive studies on large-scale, real-world programs. We describe our experience using six case studies, in which we have achieved large performance gains by fixing problems reported by our tool.
GRAphe Fonctionnel de Commande Etape Transition (GRAFCET) is a powerful graphical modeling language for the specification of discrete event systems and an international standard since 1988. Since GRAFCET is a specific...
详细信息
GRAphe Fonctionnel de Commande Etape Transition (GRAFCET) is a powerful graphical modeling language for the specification of discrete event systems and an international standard since 1988. Since GRAFCET is a specification language and not a programming language, a GRAFCET specification (Grafcet) still has to be interpreted manually, e.g. as a Programmable Logic Controller (PLC) program according to IEC 61131-3. For this reason, the authors subsequently present a tool prototype, which allows the development of a Grafcet according to IEC 60848 definitions and additionally offers the opportunity to automatically generate IEC 61131-3 compliant control code. To facilitate tool integration into industrial applications, the prototype is based on a widely-used office software.
暂无评论