The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Aspect-Oriented Programming (AOP) supports the separation of concerns cutting across the implementation of a software application in order to avoid scattering and tangling. We focus on the integration of this paradigm into the development of real-time systems. AOP is based on the weaving process to automatically integrate separately-created segments of code (specified by aspects), into the application...
n-gram statistical language model has been successfully applied to capture programming patterns to support code completion and suggestion. However, the approaches using n-gram face challenges in capturing the patterns at higher levels of abstraction due to the mismatch between the sequence nature in n-grams and the structure nature of syntax and semantics in source code. This paper presents GraLan,...
Functional programming is a technique for expressing the constructions and constructs of computer software. This technique treats calculations similarly to the calculation functions in mathematics. Therefore concepts of semantic- states and changeable data are avoided. It may be defined as a declarative technique of programming meaning that programs are mainly expressions. An efficient programming...
A goal-directed search attempts to reveal only relevant information needed to establish reachability (or unreachability) of the goal from the initial state of the program. The further apart the goal is from the initial state, the harder it can get to establish what is relevant. This paper addresses this concern in the context of programs with assertions that may be nested deeply inside its call graph...
Assigning ontological categories to OO programming abstractions is a task of ontological interpretation. In this paper, we describe an approach for ontological interpretation in which the task of interpretation is seen as a classification problem. The task of interpretation is performed in two stages, namely syntactic feature identification and ontological categorization. An analysis technique called...
Higher order mutation testing is a relatively new area of research. Researchers have claimed that higher order mutants have the potential to increase test effectiveness and reduce test effort. However, these claims have not been evaluated in the context of the aspect-oriented programming paradigm, which introduces new and unique concepts and constructs, and consequently new testing challenges. We...
A study was carried out which examined the extent to which young people aged 11-12, with no prior instruction in programming, are able to write computational rules which govern play in a 3D computer role-playing game. Expressing these rules required the use of common computational structures such as conditionals, sets and loops. We analysed the rules written for their structure and style, and recorded...
This article introduces Object-Oriented Intensional Programming (OO-IP), a new hybrid language between Object-Oriented and Intensional Programming Languages in the sense of the latest evolutions of Lucid. This new hybrid language - called JOOIP for Java Object Oriented Intensional Programming - combines the essential characteristics of Lucid and Java, and introduces the notion of object streams which...
We describe the preliminary construction of a web-based tool for test-driven learning in the first weeks of programming. We discuss obstacles to test-driven learning - both pragmatic and ideological - and describe the ways that we believe our tool overcomes these obstacles.
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.