203,443 research outputs found

    Mentat: An object-oriented macro data flow system

    Get PDF
    Mentat, an object-oriented macro data flow system designed to facilitate parallelism in distributed systems, is presented. The macro data flow model is a model of computation similar to the data flow model with two principal differences: the computational complexity of the actors is much greater than in traditional data flow systems, and there are persistent actors that maintain state information between executions. Mentat is a system that combines the object-oriented programming paradigm and the macro data flow model of computation. Mentat programs use a dynamic structure called a future list to represent the future of computations

    Implementing fault tolerant applications using reflective object-oriented programming

    Get PDF
    Abstract: Shows how reflection and object-oriented programming can be used to ease the implementation of classical fault tolerance mechanisms in distributed applications. When the underlying runtime system does not provide fault tolerance transparently, classical approaches to implementing fault tolerance mechanisms often imply mixing functional programming with non-functional programming (e.g. error processing mechanisms). The use of reflection improves the transparency of fault tolerance mechanisms to the programmer and more generally provides a clearer separation between functional and non-functional programming. The implementations of some classical replication techniques using a reflective approach are presented in detail and illustrated by several examples, which have been prototyped on a network of Unix workstations. Lessons learnt from our experiments are drawn and future work is discussed

    Advancing sCool - Game Type Research and Development

    Get PDF
    The proposed project, sCool, is an adaptive game-based learning experience designed for STEM education. In this work, we present a new iteration of sCool in efforts to further examine contributing factors of engagement, usability, and comprehension. The newly developed game experience for acquiring object-oriented programming skills is divided into two parts: concept learning and practical challenge. The concept learning part teaches students theoretical lessons of programming through fun gameplay. The practical challenge part allows students to practice programming by completing tasks. This project presents several new game types for both the concept learning and practical challenge parts. The development of these game types spreads across two phases. The first phase introduces two new game types and focuses on extending sCool to support learning object-oriented programming and improve student’s learning comprehension. The second phase builds off of the first phase, introducing another new game type to improve the object-oriented programming learning experience and the game’s overall usability and engagement. During the first phase, three experiments were conducted in a classroom setting with a computer science teacher. Conducting a study involving a total of 39 school students and three teachers, we are able to successfully display an enhanced understanding of different programming concepts. During the second phase, a single experiment was held remotely among a wide group of people, and the participants were self-guided by an instruction document and the sCool application. Conducting a study with 25 participants, we are able to show a significant improvement in the game’s usability and engagement. For future works, further evaluations in-classroom and over a longer course will be useful in assessing the new game type’s effectiveness in teaching object oriented programming. Furthermore, the game should be expanded to support learning more complex concepts in object oriented programming

    Action languages: Dimensions, effects

    Get PDF
    Dimensions of action languages are discussed for communication between humans and machines, and the message handling capabilities of object oriented programming systems are examined. Design of action languages is seen to be very contextual. Economical and effective design will depend on features of situations, the tasks intended to be accomplished, and the nature of the devices themselves. Current object oriented systems turn out to have fairly simple and straightforward message handling facilities, which in themselves do little to buffer action or even in some cases to handle competing messages. Even so, it is possible to program a certain amount of discretion about how they react to messages. Such thoughtfulness and perhaps relative autonomy of program modules seems prerequisite to future systems to handle complex interactions in changing situations

    Strategic Directions in Object-Oriented Programming

    Get PDF
    This paper has provided an overview of the field of object-oriented programming. After presenting a historical perspective and some major achievements in the field, four research directions were introduced: technologies integration, software components, distributed programming, and new paradigms. In general there is a need to continue research in traditional areas:\ud (1) as computer systems become more and more complex, there is a need to further develop the work on architecture and design; \ud (2) to support the development of complex systems, there is a need for better languages, environments, and tools; \ud (3) foundations in the form of the conceptual framework and other theories must be extended to enhance the means for modeling and formal analysis, as well as for understanding future computer systems

    A Model of an E-Learning Web Site for Teaching and Evaluating Online

    Full text link
    This research is endeavoring to design an e-learning web site on the internet having the course name as "Object Oriented Programming" (OOP) for the students of level four at Computer Science Department (CSD). This course is to be taught online (through web) and then a programme is to be designed to evaluate students performance electronically while introducing a comparison between online teaching , e-evaluation and traditional methods of evaluation. The research seeks to lay out a futuristic perception that how the future online teaching and e-electronic evaluation should be the matter which highlights the importance of this research

    Life of occam-Pi

    Get PDF
    This paper considers some questions prompted by a brief review of the history of computing. Why is programming so hard? Why is concurrency considered an “advanced” subject? What’s the matter with Objects? Where did all the Maths go? In searching for answers, the paper looks at some concerns over fundamental ideas within object orientation (as represented by modern programming languages), before focussing on the concurrency model of communicating processes and its particular expression in the occam family of languages. In that focus, it looks at the history of occam, its underlying philosophy (Ockham’s Razor), its semantic foundation on Hoare’s CSP, its principles of process oriented design and its development over almost three decades into occam-? (which blends in the concurrency dynamics of Milner’s ?-calculus). Also presented will be an urgent need for rationalisation – occam-? is an experiment that has demonstrated significant results, but now needs time to be spent on careful review and implementing the conclusions of that review. Finally, the future is considered. In particular, is there a future

    Knowledge-based simulation using object-oriented programming

    Get PDF
    Simulations have become a powerful mechanism for understanding and modeling complex phenomena. Their results have had substantial impact on a broad range of decisions in the military, government, and industry. Because of this, new techniques are continually being explored and developed to make them even more useful, understandable, extendable, and efficient. One such area of research is the application of the knowledge-based methods of artificial intelligence (AI) to the computer simulation field. The goal of knowledge-based simulation is to facilitate building simulations of greatly increased power and comprehensibility by making use of deeper knowledge about the behavior of the simulated world. One technique for representing and manipulating knowledge that has been enhanced by the AI community is object-oriented programming. Using this technique, the entities of a discrete-event simulation can be viewed as objects in an object-oriented formulation. Knowledge can be factual (i.e., attributes of an entity) or behavioral (i.e., how the entity is to behave in certain circumstances). Rome Laboratory's Advanced Simulation Environment (RASE) was developed as a research vehicle to provide an enhanced simulation development environment for building more intelligent, interactive, flexible, and realistic simulations. This capability will support current and future battle management research and provide a test of the object-oriented paradigm for use in large scale military applications
    corecore