Certain features of programming languages, such as data structure operations and procedure call mechanisms, have been found to resist formalization by conventional program verification techniques. An alternate approac...
详细信息
Certain features of programming languages, such as data structure operations and procedure call mechanisms, have been found to resist formalization by conventional program verification techniques. An alternate approach is presented, based on a “situational calculus,” which makes explicit reference to the states of a computation. For each state, a distinction is drawn between an expression, its value, and the location of the *** this conceptual framework, the features of a programming language can be described axiomatically. Programs in the language can then be synthesized, executed, verified, or transformed by performing deductions in this axiomatic system. Properties of entire classes of programs, and of programming languages, can also be expressed and proved in this way. The approach is amenable to machine *** a situational-calculus formalism it is possible to model precisely many “problematic” features of programming languages, including operations on such data structures as arrays, pointers, lists, and records, and such procedure call mechanisms as call by reference, call by value, and call by name. No particular obstacle is presented by aliasing between variables, by declarations, or by recursive *** this paper, we introduce our conceptual framework and present an axiomatic definition of the assignment statement. If suitable restrictions on the programming language are imposed, the well-known Hoare assignment axiom can then be proved as a theorem. However, our definition can also describe the assignment statement of unrestricted programming languages, for which the Hoare axiom does not hold. In forthcoming papers, we apply the situational-calculus framework to the description of data structure operations and procedure call mechanisms.
In numerical computations mainly real and complex numbers, intervals as well as matrices and vectors with such components occur. It is well known that the arithmetic operations with real numbers, complex numbers etc. ...
详细信息
In numerical computations mainly real and complex numbers, intervals as well as matrices and vectors with such components occur. It is well known that the arithmetic operations with real numbers, complex numbers etc. can be carried over to real floating-point numbers, complex floating-point numbers etc. using roundings. This proceeding results in agreeable arithmetic-, order- and compatibility-properties for an abundance of numerical data types and the accompanying arithmetic operations. Most programming languages however only provide real floating-point numbers; all the other data types and operations have to be simulated, e. g. in the form of arrays and procedure calls, which often causes loss of accuracy and arithmetic properties. Furthermore the complicate notation makes programs difficult to read. Therefore in this article an extension of PASCAL is presented which serves as an example for the way these numerical data types can be embedded into the syntax of a programming language.
The same learning process in educational systems could be boring and time consuming for some learners. This problem arises from the lack of personalized learning sequence for learners with different knowledge level. R...
详细信息
The same learning process in educational systems could be boring and time consuming for some learners. This problem arises from the lack of personalized learning sequence for learners with different knowledge level. Recommender systems play an important role in assisting the learners to find suitable learning materials and personalized learning sequence. Use of ontology for knowledge representation in knowledge-based recommender systems would facilitate sharing, reuse and common terminology. Since programming concepts have logical relationships among together so, traditional education systems are more stressful and very time-consuming. This paper aims to propose an ontology-based recommender system to present a Personalized Learning Sequence in programming (PLSP) domain which is depended to learner's knowledge level. A recommender module and, the knowledge base module are integrated together in the proposed framework. The recommender module as the main module in the framework, has three stages which is working based on semantic rules and ontology representation. Evaluation of the system was carried out by comparing the non-recommender system (web-based search) using 32 ICT respondents. Results demonstrate that the participants who used the proposed system spent 1119 seconds to find the suitable learning path in comparison to those who used a non-recommender system (3480 seconds) in the same learning material. It means that learners who follow learning path with PLSP, are more suitable for them. Furthermore, the average mean value of usability test is 4.47, (5 maximum scale) which indicates that the system proved to be useful, was easy to use, and satisfied the users.
Prior research has shown that students face transition challenges between programming languages (PL) over the course of their education. We could not find research attempting to devise a model that describes the trans...
详细信息
ISBN:
(纸本)9781450370929
Prior research has shown that students face transition challenges between programming languages (PL) over the course of their education. We could not find research attempting to devise a model that describes the transition process and how students' learning of programming concepts is affected during the shift. In this paper, we propose a model to describe PL transfer for relative novices. In the model, during initial stages of learning a new language, students will engage in learning three categories of concepts, True Carryover Concepts, False Carryover Concepts, or Abstract True Carryover Concepts;during the transition, learners automatically effect a transfer of semantics between languages based on syntax matching. In order to find support for the model, we conducted two empirical studies. Study 1 investigated near-novice undergraduate students transitioning from procedural Python to object-oriented Java while Study 2 investigated near-novice postgraduate students doing a transfer from object-oriented Java to procedural Python. Results for both studies indicate that students had little or no difficulty with transitioning on TCC due to positive semantic transfer based on syntax similarities while they had the most difficulty transitioning on FCC due to negative semantic transfer. Students had little or no semantic transfer on ATCC due to differences in syntax between the languages. We suggest ways in which the model can inform pedagogy on how to ease the transition process.
Predictably, this is a direct result of the understanding of superblocks. The construction of the transistor would improbably amplify the emulation of the lookaside buffer. Unified pervasive technology has led to many...
详细信息
ISBN:
(纸本)9789881824219
Predictably, this is a direct result of the understanding of superblocks. The construction of the transistor would improbably amplify the emulation of the lookaside buffer. Unified pervasive technology has led to many private advances, including SCSI disks and the UNIVAC computer. Nevertheless, a typical quagmire in algorithms is the development of reinforcement learning. Many cyberneticists would agree that, had it not been for cache coherence, the exploration of Smalltalk might never have occurred. The investigation of the producer-consumer problem is proved. Using authenticated epistemologies, it is concluded and demonstrated that symmetric encryption can be made virtual, metamorphic, and authenticated.
A simple correspondence is presented between the elementary constructs of programming languages and the lambda-calculus. The correspondence is obtained by using intuitive, functional interpretations of programming lan...
详细信息
作者:
Grue, Klaus E.DIKU
University of Copenhagen Copenhagen East DK-2100 Universitetsparken I Denmark
In pure functional programs it is common to represent arrays by association lists. Association lists have the disadvantage that the access time varies linearly both with the size of the array (counted in number of ent...
详细信息
暂无评论