the proceedings contain 25 papers. the special focus in this conference is on software tool and its development. the topics include: purely functional global variables;compiler support for profiling C++ template metap...
ISBN:
(纸本)9789949231782
the proceedings contain 25 papers. the special focus in this conference is on software tool and its development. the topics include: purely functional global variables;compiler support for profiling C++ template metaprograms;database-driven tool support for DisCo executable specifications;a multi-layer diagrammatic (Meta) modelling environment;the INTEGRA tool integration framework;a model for language-independent mobile agents;layered artificial intelligence framework for autonomous agents;interleaving human and search-based software architecture design;class and object model conformance using OWL2 reasoners;bounded saturation based CTL model checking;automated code synthesis for run-time verification of distributed embedded systems;a declarative approach to solving challenging search problems;personalized side-quest generation for computer role-playing games;adjusting effort estimation using micro-productivity profiles;quantitative system reliability approach for optimizing IT security costs in an AI environment;component reuse in ensemble-based medical image processing applications;extended choice relation framework for workflow testing and towards more reliable C++ template metaprograms.
Interoperability between deductive program verification tools is a well-recognized long-standing challenge. In this paper we propose a solution for a well-delineated aspect of this challenge, namely the exchange of ab...
详细信息
ISBN:
(纸本)9783031753794;9783031753800
Interoperability between deductive program verification tools is a well-recognized long-standing challenge. In this paper we propose a solution for a well-delineated aspect of this challenge, namely the exchange of abstract contracts for possibly stateful interfaces that represent modularity boundaries. Interoperability across tools, specification paradigms, and programminglanguages is achieved by focusing on abstract implementation-independent behavioral models. the approach, called Contract-LIB in reminiscence of the widely-successful SMT-LIB format, aims to standardize the language over which such contracts are formulated and provides clear guidance on its integration with established methods to connect high-level specifications with code-level data structures. We demonstrate the ideas with examples, define syntax and semantics, and discuss the rationale behind key design decisions.
An approach for semi-automated design of software architecture is proposed. the approach makes use of a search-based architecture synthesis technique exploiting genetic algorithms. An interactive process of software a...
详细信息
ISBN:
(纸本)9789949231782
An approach for semi-automated design of software architecture is proposed. the approach makes use of a search-based architecture synthesis technique exploiting genetic algorithms. An interactive process of software architecture design is proposed, where the automatic search-based generation of architectural fragments interleaves withthe decisions of a human architect. To support such a process, tool mechanisms are proposed and implemented. the approach is studied using a sample system, whose architecture is designed following the interactive process model.
this paper describes the Simpl toolkit for implementing domain-specific languages (DSLs). Simpl aims to be a comprehensive toolkit that covers most of the aspects of developing a DSL. DSL implementations created with ...
详细信息
ISBN:
(纸本)9789949231782
this paper describes the Simpl toolkit for implementing domain-specific languages (DSLs). Simpl aims to be a comprehensive toolkit that covers most of the aspects of developing a DSL. DSL implementations created with Simpl can be embedded into a larger system because no assumptions about architecture of the system are made. Simpl is based on existing tools and adds to them a grammar description language, automatic generation of abstract syntax tree classes, convenient API for creating language IDEs, and integration layer to tie together the base components. Two tests were performed to evaluate the Simpl toolkit. Firstly, a fairly complex DSL, namely Waebric, was implemented and code metrics were compared to implementations based on other DSL tools. Simpl implementation contained the fewest lines of code and the code complexity was lower compared to the other tools. Secondly, subjects implemented a DSL using Simpl and using the ANTLR parser generator. the results showed that implementing the task with Simpl took less time than with ANTLR.
Answer set programming (ASP) is a declarative programming paradigm that has its roots in the stable model (answer set) semantics of logic programs and implementations of this semantics developed in the late 90's. ...
详细信息
ISBN:
(纸本)9789949231782
Answer set programming (ASP) is a declarative programming paradigm that has its roots in the stable model (answer set) semantics of logic programs and implementations of this semantics developed in the late 90's. the basic idea of ASP is similar to, for example, SAT-based planning or constraint satisfaction problems but in ASP the goal is to provide a more powerful knowledge representation language for effective problem encoding. A number of successful ASP systems have already been developed and applied in areas such as planning, decision support for the flight controllers of space shuttles, web-based product configuration, configuration of a Linux distribution, computer aided verification, VLSI routing, network management, security protocol analysis, network inhibition analysis, and diagnosis. the talk explains the theoretical underpinnings of ASP, introduces the ASP programming paradigm, outlines computational techniques used in current ASP solvers, and discusses some interesting applications of the approach.
this paper studies an approach to implementing global mutable variables within a purely functional setting. Global variables seem to be one of the nastiest pieces of the imperative world, being hard to emulate functio...
详细信息
ISBN:
(纸本)9789949231782
this paper studies an approach to implementing global mutable variables within a purely functional setting. Global variables seem to be one of the nastiest pieces of the imperative world, being hard to emulate functionally even in the presence of monadic input-output. the source of difficulty lies in the monadic memory allocation operation. the standard way to get around of using global variables in practice is packing the global data into parameters that are passed (either explicitly or implicitly) to every function that needs them. Our aim is to show that functional programming enables, with reasonable effort, implementing global mutable variables in the true meaning of this concept. this makes handling global data easier in programs. the core idea of our approach is to make memory allocation implicit. We implement our ideas in Haskell. Mutable variables are first-class values belonging to special types that are parametrized by the type of values that the variables hold. Basically, the approach follows the way variables and their values are handled in semantics of imperative programminglanguages. Nevertheless, the approach would not be practically reasonable without type families, scoped type variables and other recent developments of GHC.
Shannon's information-theoretic lower bound has been developed for uniquely decodable systems of bit strings, while ordinary data structures often consist of many separate blocks of memory. One might expect that a...
详细信息
ISBN:
(纸本)9789949231782
Shannon's information-theoretic lower bound has been developed for uniquely decodable systems of bit strings, while ordinary data structures often consist of many separate blocks of memory. One might expect that adapting the bound to data structures is trivial, but we demonstrate that this is not the case. Our counter-example represents the status of a distributed system via two bits. Each bit is sometimes used for another purpose and is then outside the data structure, but only when the intended value is determined by the other bit. Kraft's inequality, which is at the heart of informationtheoretic lower bound proofs, does not hold for this system. then we formalise the concept of data structure withthe notion of "representation scheme" that is general enough to model the example system. We re-establish the information-theoretic lower bound by proving that Kraft's inequality applies to a subset of representation schemes that contains the memory-optimal schemes.
Modern computer role-playing games contain numerous quests, individual puzzles to be solved by the player character. Usually quests are predefined by the application developer, and a lot of application development tim...
详细信息
ISBN:
(纸本)9789949231782
Modern computer role-playing games contain numerous quests, individual puzzles to be solved by the player character. Usually quests are predefined by the application developer, and a lot of application development time is spent in programmingthose. Predefined quests are however errorprone and difficult to maintain. In addition, predefined quests appear in the same form in every playtime and no matter what kind of player character the player is playing. In this paper, we present a generative approach to produce personalized side-quests for computer role-playing games. Using this approach, it is possible to replace the predefined quests and ease the work of the application developer, or simply use generated quests in addition to hard-coded ones, therefore further increasing the number quests in the game. the quest generation is based on attributes of the player character, which ensures those are suitable for the game. To evaluate our approach, we have implanted quest generator program and used it with an existing environment the CAGE game engine. We present example cases, where generated quests are used in a western computer role-playing game prototype.
In computer games, the current trend is to create large virtual worlds with numerous non-player characters. Usually their artificial intelligence is implemented by scripting, which can be a burden for application deve...
详细信息
ISBN:
(纸本)9789949231782
In computer games, the current trend is to create large virtual worlds with numerous non-player characters. Usually their artificial intelligence is implemented by scripting, which can be a burden for application developers. this paper suggests an approach, in which hard-coded scripting is replaced by autonomous agents with personal characteristics. Using this approach the amount of scripting needed is reduced and the resulting agents can be made to behave in natural manner. Also, applying e.g. the goal-oriented agent paradigm is easy. the definitions needed are written using a script language;therefore the agent configurations can be tested rapidly. We have also implemented a specific tool for simplifying the actual code-writing task. For evaluating our approach, we have extended an existing environment and created a framework. We present two example scenarios specialized from it.
We investigate a phenomenon we call micro-productivity decrease, which is expected to be found in most development or maintenance projects and has a specific profile that depends on the project, the development model ...
详细信息
ISBN:
(纸本)9789949231782
We investigate a phenomenon we call micro-productivity decrease, which is expected to be found in most development or maintenance projects and has a specific profile that depends on the project, the development model and the team. Micro-productivity decrease refers to the observation that the cumulative effort to implement a series of changes is larger than the effort that would be needed if we made the same modification in only one step. the reason for the difference is that the same sections of code are usually modified more than once in the series of (sometimes imperfect) atomic changes. Hence, we suggest that effort estimation methods based on atomic change estimations should incorporate these profiles when being applied to larger modification tasks. We verify the concept on industrial development projects with our metrics-based machine learning models extended with statistical data. We show the calculated micro-productivity profile for these projects could be used for effort estimation of larger tasks with more accuracy than a naive atomic change oriented estimation.
暂无评论