Search results for " Programming language."
showing 10 items of 44 documents
Model Transformation Languages and Their Implementation by Bootstrapping Method
2008
In this paper a sequence of model transformation languages L0, L1, L2 is defined. The first language L0 is very simple, and for this language it is easy to build an efficient compiler to C++. The next language L1 is an extension of L0, and it contains powerful pattern definition facilities. The last language L2 is of sufficiently high level and can be used for implementation of traditional pattern-based high level model transformation languages, as well as for the development of model transformations directly. For languages L1 and L2 efficient compilers have been built using the bootstrapping method: L1 to L0 in L0, and L2 to L1 in L1. The results confirm the efficiency of model transformat…
Fifth Generation Networking Principles for a Service Driven Future Internet Architecture
2010
Published version of an article published in Wireless Personal Communications, vol. 57:393-411. Also available from the publisher at: http://dx.doi.org/10.1007/s11277-010-0076-7 The vision of all-IP networks where IP forms the simple common layer understandable across the whole network has undeniable advantages. However, such simplicity comes as a major hurdle to flexibility and functionality to the architecture. This is evident from the increasingly numerous and complex engineering solutions and optimizations required to accommodate essential qualities like mobility, security, realtime communication support etc or to mitigate the shortcomings inherent in the 'traditional Internet' architec…
Adding Partial Functions to Constraint Logic Programming with Sets
2015
AbstractPartial functions are common abstractions in formal specification notations such as Z, B and Alloy. Conversely, executable programming languages usually provide little or no support for them. In this paper we propose to add partial functions as a primitive feature to a Constraint Logic Programming (CLP) language, namely {log}. Although partial functions could be programmed on top of {log}, providing them as first-class citizens adds valuable flexibility and generality to the form of set-theoretic formulas that the language can safely deal with. In particular, the paper shows how the {log} constraint solver is naturally extended in order to accommodate for the new primitive constrain…
Semantics of UML 2.0 Activity Diagram for Business Modeling by Means of Virtual Machine
2005
The paper proposes a more formalized definition of UML 2.0 Activity Diagram semantics. A subset of activity diagram constructs relevant for business process modeling is considered. The semantics definition is based on the original token flow methodology, but a more constructive approach is used. The Activity Diagram Virtual machine is defined by means of a metamodel, with operations defined by a mix of pseudocode and OCL pre- and postconditions. A formal procedure is described which builds the virtual machine for any activity diagram. The relatively complicated original token movement rules in control nodes and edges are combined into paths from an action to action. A new approach is the us…
Saying Hello World with MOLA - A Solution to the TTC 2011 Instructive Case
2011
This paper describes the solution of Hello World transformations in MOLA transformation language. Transformations implementing the task are relatively straightforward and easily inferable from the task specification. The required additional steps related to model import and export are also described.
K-12 game programming course concept using textual programming
2011
Several programming environments have been constructed to facilitate novice programming at K-12 and CS0/CS1 levels. The environments can be roughly divided into those using visual or textual programming. This paper presents a K-12 game programming course concept based on textual programming. The concept is based on an easy-to-use C# library, called Jypeli, built on top of Microsoft XNA Framework. The library tries to maintain advantages of visual programming and avoid challenges of textual programming. In particular, the library helps beginners to program their first games in a short period of time and without a heavy syntactic load. The course concept and an initial evaluation consisting o…
Towards CNC Programming Using Haskell
2004
Recent advances in Computerized Numeric Control (CNC) have allowed the manufacturing of products with high quality standards. Since CNC programs consist of a series of assembler-like instructions, several high-level languages (e.g., AutoLISP, APL, OMAC) have been proposed to raise the programming abstraction level. Unfortunately, the lack of a clean semantics prevents the development of formal tools for the analysis and manipulation of programs. In this work, we propose the use of Haskell for CNC programming. The declarative nature of Haskell provides an excellent basis to develop program analysis and manipulation tools and, most importantly, to formally prove their correctness.
Clustering with Terracotta
2008
Masteroppgave i informasjons- og kommunikasjonsteknologi 2008 – Universitetet i Agder, Grimstad In today’s java community, modern enterprise application products have more constraints and requirements then ever. High availability, application scalability and also good performance are required, which means an application is needed to be deployed on multiple JVMs, in other words, it has to be clustered or distributed. It is essential for the application to scale out well, has better performance and less complexity during development of clustering. This master thesis focuses on clustering with Terracotta which is a JVM level clustering technique. First I start analyzing the complexity when an …
An Iconic Framework for Learning the Art of Programming
2016
The integration of programming teachings, in all levels of education, highlights the need to acquire the art of programming for each individual student through versatile tools based on specific cognitive methods. Diversified linguistic metaphors have to be adopted by the developing frame, in order to highlight the qualities of each student. Therefore, a framework, oriented to learning the art of programming, must foster polychrome constructs representations, a number of data structures and an intuitive interfaces in order to make easier to understand the evolution of the algorithm that have to be developed. The following contribution will present a theoretical formalization of a framework f…
Novel pedagogical tool for simultaneous learning of plane geometry and R programming
2018
Programming a computer is an activity that can be very beneficial to undergraduate students in terms of improving their mental capabilities, collaborative attitudes and levels of engagement in learning. Despite the initial difficulties that typically arise when learning to program, there are several well-known strategies to overcome them, providing a very high benefit-cost ratio to most of the students. Moreover, the use of a programming language usually raises the interest of students to learn any specific concept, which has caused that many teachers around the world employ a programming language as a learning environment to treat almost every possible topic. Particularly, mathematics can …