There is no ideal programming language. Each is better suited to some tasks rather than others. This is true not only for complete programs, but also for different stages such as architectural design, detailed impleme...
详细信息
There is no ideal programming language. Each is better suited to some tasks rather than others. This is true not only for complete programs, but also for different stages such as architectural design, detailed implementation and maintenance. The situation is even more acute in the case of end-user programming languages, which cater for a much more varied user population. It would therefore be advantageous to allow the same program to be viewed, and edited, in a number of different languages. We have developed a system, Lingua Franca, that provides this facility for end-user programming languages in the setting of ubiquitous computing in the home. Copyright (C) 2006 John Wiley & Sons, Ltd.
visual programming languages aim to broaden the use of diagrams within the software industry, to the extent that they are integrated into the programming language itself. As a result, they provide an ideal opportunity...
详细信息
visual programming languages aim to broaden the use of diagrams within the software industry, to the extent that they are integrated into the programming language itself. As a result, they provide an ideal opportunity to study the benefits of diagrams as an external representation during problem solving: not only is programming a challenging problem-solving activity, but the effect of diagram usage can be directly assessed by comparing performance while using a visual programming language to performance with a standard textual language. There have been several misconceptions amongst visual language researchers regarding the role of diagrams in software design, but these are being addressed by empirical studies and by new theories of notation design derived from studies of visual programming. Based on this research, the authors are able to recommend several new directions for research into thinking with diagrams.
Historically, embedded systems development has been a specialist skill, requiring knowledge of low-level programming languages, complex compilation toolchains, and specialist hardware, firmware, device drivers and app...
详细信息
Historically, embedded systems development has been a specialist skill, requiring knowledge of low-level programming languages, complex compilation toolchains, and specialist hardware, firmware, device drivers and applications. However, it has now become commonplace for a broader range of non-specialists to engage in the making (design and development) of embedded systems - including educators to motivate and excite their students in the classroom. This diversity brings its own set of unique requirements, and the complexities of existing embedded systems development platforms introduce insurmountable barriers to entry. In this paper we present the motivation, requirements, implementation, and evaluation of a new programming platform that enables novice users to create effective and efficient software for embedded systems. The platform has two major components: (1) Microsoft MakeCode (***), a web app that encapsulates an accessible IDE for microcontrollers;and (2) CODAL, an efficient component-oriented C++ runtime for microcontrollers. We show how MakeCode and CODAL combine to provide an accessible, cross-platform, installation-free, high level programming experience for embedded devices without sacrificing performance and efficiency.
Purpose - Aims to demonstrate how an automated robot program generation method can be developed and implemented. Design/methodology/approach - A visual and force servoing method to automatically generate robot paths a...
详细信息
Purpose - Aims to demonstrate how an automated robot program generation method can be developed and implemented. Design/methodology/approach - A visual and force servoing method to automatically generate robot paths and robot programs, based on position, force and vision sensor fusion, was developed. Findings - By using a hybrid control algorithm the robot is controlled to follow the feature on a surface with position and orientation control. Originality/value - The developed method can be applied to generate tool paths for many manufacturing tasks automatically, which can greatly reduce the robot programming time and decrease the manufacturing cost.
Coding skills are becoming more and more important in today's world, especially within the context of the fourth industrial revolution. They also help practice other 21 century skills such as computational thinkin...
详细信息
Coding skills are becoming more and more important in today's world, especially within the context of the fourth industrial revolution. They also help practice other 21 century skills such as computational thinking, problem solving and teamwork. Unfortunately, learning how to program is tough and can be also frustrating for beginner students. In this work we introduce RoboTIC, a serious game based on gamification and Augmented Reality that facilitates the learning of programming to students in lower levels of the education system by using a novel set of visual metaphors derived from a notation of roads and traffic signs. The architecture that supports RoboTIC has been designed to allow the integration of multimedia components when new programming concepts and techniques must be addressed and to add game levels that enable students to learn incrementally. Experiments have been conducted in a youth center with children who do not have coding skills at all to demonstrate the feasibility of the proposal. The results show promising conclusions in terms of children's motivation and interest in programming.
This paper presents Visper, a novel object-oriented framework that identifies and enhances common services and programming primitives, and implements a generic set of classes applicable to multiple programming models ...
详细信息
This paper presents Visper, a novel object-oriented framework that identifies and enhances common services and programming primitives, and implements a generic set of classes applicable to multiple programming models in a distributed environment. Groups of objects, which can be programmed in a uniform and transparent manner, and agent-based distributed system management, are also featured in Visper. A prototype system is designed and implemented in Java, with a number of visual utilities that facilitate program development and portability, As a use case, Visper integrates parallel programming in an MPI-like message-passing paradigm at a high level with services such as checkpointing and fault tolerance at a lower level. The paper reports a range of performance evaluation on the prototype and compares it to related works.
After tracing the steps that led to the current generation of iconic languages starting from the original idea of S.K. Chang, we describe an iconic language, named MicroApp, for modeling pervasive mobile applications ...
详细信息
After tracing the steps that led to the current generation of iconic languages starting from the original idea of S.K. Chang, we describe an iconic language, named MicroApp, for modeling pervasive mobile applications directly on the mobile device. MicroApp exploits generalized icons for composing mobile applications: services are represented by icons and are composed of adopting colors for representing data-flow. We also qualitatively evaluate the visual environment that implements this iconic language.
To provide high-level graphical support for developing message passing programs, an integrated programming environment (GRADE) is being developed. GRADE provides tools to construct, execute, debug, monitor and visuali...
详细信息
To provide high-level graphical support for developing message passing programs, an integrated programming environment (GRADE) is being developed. GRADE provides tools to construct, execute, debug, monitor and visualise message-passing based parallel programs. The paper describes the integration of GRADE and an OMIS compliant monitor system. OMIS is a recent specification of a universal on-line monitoring interface for parallel and distributed programs. The integration provides GRADE with a more flexible monitoring support and makes possible the simultaneous usage of debugging and visualisation tools. The paper specifically addresses the requirements imposed by GRADE on the on-line event tracing mechanisms, as well as their implementation and performance. (C) 2000 Elsevier Science B.V. All rights reserved.
This article reports an investigation into undergraduate student experiences and views of a visual or 'blocks' based programming language and its environment. An additional and central aspect of this enquiry i...
详细信息
This article reports an investigation into undergraduate student experiences and views of a visual or 'blocks' based programming language and its environment. An additional and central aspect of this enquiry is to substantiate the perceived degree of transferability of programming skills learnt within the visual environment to a typical mainstream textual language. Undergraduate students were given programming activities and examples covering four basic programming concepts based on the Sense programming language which is intended to simplify programming. Sense programming statements are represented by blocks which only fit together in ways that produce a meaningful syntactic outcome, which may lower the cognitive barrier to learning. Students were also presented with concepts represented using an equivalent textual construct and asked to consider their understanding of these based on the graphical cases. They were finally asked to complete a short online survey. This paper presents the programming activities, the survey and an analysis of the results.
Rule-based programming systems can be fragile because they force the user to account for all logical alternatives. If an unconsidered case does arise during execution, program behavior falls through the cracks into un...
详细信息
Rule-based programming systems can be fragile because they force the user to account for all logical alternatives. If an unconsidered case does arise during execution, program behavior falls through the cracks into unspecified behavior. We investigate rule-based, end-user strategy programming by introducing our Interactive Football Playbooka domain specific, end-user programming environment to allow American football coaches to create animated football scenarios by associating strategy information with virtual football players. We address the problem of rule explosion through "rule bending" to support a minimalist, scaffolding-driven programming environment. Additionally, we introduce visual language representations for logical and sequential "and" to mitigate end-user confusion with the semantic meaning of these "and" constructs. (c) 2008 Published by Elsevier Ltd.
暂无评论