The purpose of this WIP research paper is to explore high school STEM teachers' perspectives on teaching computerprogramming through games and robotics in their classes. In response to high demands for software e...
详细信息
Newly released robot programming tools have made it feasible for end-users to program industrial robots by combining block-based languages and lead-through programming. To use these systems effectively, end-users, who...
详细信息
Newly released robot programming tools have made it feasible for end-users to program industrial robots by combining block-based languages and lead-through programming. To use these systems effectively, end-users, who usually have limited or no programming experience, require training. To train users, tutoring systems are often used for block-based programming-some even for lead-through programming-but no tutorial system combines these two types of programming. We present CoBlox Interactive Tutorials (CITs), a novel tutoring approach that teaches how to use both the hardware and software components that comprise a typical end-user robot programming environment. As users switch between the two programming styles, CITs provide them with extensive scaffolding, give users immediate feedback on missteps, and provide guidance on next steps. To evaluate CITs, we conducted a study with 79 industrial end-users using a programming environment released by ABB Robotics that compares our approach to training with training videos, the most commonly used training in industry. This study, one of the largest to date on training professional end-users, found that CIT-trained users authored more correct programs in less time than video-trained users. This shows that a tight integration of hardware and software concepts is crucial to training end-users to program industrial robots.
This paper presents a comparative study of Algot, a visual programming language designed to bridge the syntax-semantics gap via liveness and programming by demonstration, and the textual programming language Python. W...
详细信息
ISBN:
(纸本)9798400704758
This paper presents a comparative study of Algot, a visual programming language designed to bridge the syntax-semantics gap via liveness and programming by demonstration, and the textual programming language Python. We conducted an experimental, within-subjects study with 24 undergraduate computerscience students who performed recursion-based tasks in each language while their cognitive load was measured using an electroencephalogram and a validated survey instrument. The students received a brief introduction to Algot, but were all familiar with Python. The students performed significantly better when programming in Algot, but the cognitive load levels were similar according to both instruments. Our results provide evidence that within the domain that was tested, Algot can be quickly learned, and that students do not find it more cognitively demanding than working in a familiar language.
Teaching programming is a challenging task, as it requires instructors to guide students in developing complex skills such as real-world abstraction, problem-solving, and logical reasoning. However, the traditional te...
详细信息
Teaching programming is a challenging task, as it requires instructors to guide students in developing complex skills such as real-world abstraction, problem-solving, and logical reasoning. However, the traditional teaching approach is often ineffective in achieving these objectives. Evidence suggests that Active Learning Methodologies (ALMs) can provide a more conducive environment for skill and competency development. Nonetheless, instructors' adoption rate of ALMs remains relatively low due to various barriers and factors, particularly in programming education. To assist instructors in facing this challenge, we present in this article CollabProg, an open collaborative repository designed to support instructors in identifying and selecting the appropriate ALMs for their teaching context and specific classroom needs. Additionally, CollabProg provides a set of practical guidelines, offering a step-by-step guide to assist instructors in adopting ALMs. We adopted the Design science Research Methodology (DSRM) to systematically address the research problem and guide the development, evaluation, and evolution of CollabProg. Furthermore, we present two case studies to evaluate the acceptance and feasibility of using CollabProg from the perspective of instructors at different educational institutions in Brazil. The evidence demonstrates that CollabProg effectively supports instructors in adopting active learning methodologies while identifying limitations and opportunities for improvement. We also found that CollabProg helped instructors identify and choose suitable ALMs for their teaching context to meet their specific classroom needs. The guidelines provided by the repository were useful and highly practical for lesson planning in adopting ALMs. The adoption of CollabProg underscores the need for effective strategies to support instructors in teaching programming and motivating students to learn. These strategies are particularly important in collaborative learning cont
We introduce layering to modal type theory to combine type theory with intensional analysis. In particular, we demonstrate this idea by developing a 2-layered modal type theory. At the core of this type theory (layer ...
详细信息
ISBN:
(纸本)9783031572616;9783031572623
We introduce layering to modal type theory to combine type theory with intensional analysis. In particular, we demonstrate this idea by developing a 2-layered modal type theory. At the core of this type theory (layer 0) is a simply typed.-calculus with no modality. Layer 1 is obtained by extending the core language with one layer of contextual. types to support pattern matching on potentially open code from layer 0 while retaining normalization. Although both layers fundamentally share the same language and the same typing judgment, we only allow computation at layer 1. As a consequence, layer 0 accurately captures the syntactic representation of code in contrast to the computational behaviors at layer 1. The system is justified by normalization by evaluation (NbE) using a presheaf model. The normalization algorithm extracted from the model is sound and complete and is implemented in Agda. Layered modal type theory provides a uniform foundation for metaprogramming with intensional analysis. We see this work as an important step towards a foundational way to support meta-programming in proof assistants.
We propose MetaFM, a novel ML-style module system that enables users to decompose multi-stage programs (i.e., programs written in a typed multi-stage programming language) into loosely coupled components in a manner n...
详细信息
ISBN:
(纸本)9789819722990;9789819723003
We propose MetaFM, a novel ML-style module system that enables users to decompose multi-stage programs (i.e., programs written in a typed multi-stage programming language) into loosely coupled components in a manner natural with respect to type abstraction. The distinctive aspect of MetaFM is that it allows values at different stages to be bound in a single structure (i.e., struct ... end). This feature is crucial, for example, for defining a function and a macro that use one abstract type in common, without revealing the implementation detail of that type. MetaFM also accommodates functors, higher-kinded types, the with type-construct, etc. with staging features. For defining semantics and proving type safety, we employ an elaboration technique, i.e., type-directed translation to a target language, inspired by the formalization of F-ing Modules. Specifically, we give a set of elaboration rules for converting MetaFM programs into System F omega(<>), a multi-stage extension of System F omega, and prove that the elaboration preserves typing. Additionally, our language supports cross-stage persistence (CSP), a feature for code reuse spanning more than one stage, without breaking type safety.
Task-based programming models are gaining traction in scientific computing. IRIS is a portable runtime system that exploits multiple heterogeneous programming systems and can discover available resources and manage mu...
详细信息
ISBN:
(数字)9783031617638
ISBN:
(纸本)9783031617621;9783031617638
Task-based programming models are gaining traction in scientific computing. IRIS is a portable runtime system that exploits multiple heterogeneous programming systems and can discover available resources and manage multiple diverse programming systems (e.g., CUDA, Hexagon, HIP, Level Zero, OpenCL, and OpenMP) simultaneously. It accounts for the constraints of task dependencies and provides customizable scheduling policies to map those tasks to heterogeneous devices. In this paper, we present new capabilities added to IRIS to improve its portability for heterogeneous programming, build-friendliness, and performance efficiency. The new additions include vendor-specific kernel support, a runtime system with a foreign function interface to eliminate writing wrapper or boilerplate code for heterogeneous kernels, an easy-to-use and configurable CMake-based build environment, automatic and efficient data transfers and orchestration, and the Hunter and DAGGER toolchains to evaluate IRIS's task scheduling algorithms.
This exploratory study attempted to examine the relationship between the level of performance of Bachelor of science in computerscience (BSCS) students in their on-the-job (OJT) course and their academic performance ...
详细信息
For the project scheduling problem with transfer times under an uncertain environment, not only the activity durations are stochastic, but transfer times are often also stochastic. Therefore, we propose a resource- co...
详细信息
For the project scheduling problem with transfer times under an uncertain environment, not only the activity durations are stochastic, but transfer times are often also stochastic. Therefore, we propose a resource- constrained project scheduling problem with stochastic activity durations and transfer times (RCPSP-SDT), which requires complex activity sequencing and resource transfer decisions with an activity priority rule (APR) and a resource transfer priority rule (RTPR) under unpredicted dynamic factors. However, manually designed combination rules of APRs and RTPRs are time-consuming and only for specific scenarios. Therefore, we develop a hyper-heuristic approach based on genetic programming (GP), which has been successfully applied to evolve activity priority rules for project scheduling problems. A new representation of GP individuals was designed to evolve the APR and the RTPR simultaneously. In order to improve the efficiency and solution quality of the approach, we propose surrogate-assisted cooperative learning genetic programming (SCLGP) based on GP. Based on the benchmark data set, computer experiments were conducted under nine variance levels of stochastic distributions. The results show that the proposed algorithm SCLGP performs significantly better than the classical priority rule (PR)-based heuristics. Furthermore, the effectiveness and efficiency of SCLGP were verified by comparing it to four other GP-based algorithms. Finally, the impact of the parameters on the algorithm was investigated, proving that these parameters affect the algorithm's performance.
Examining middle school students' computational identity development, personal, situational variables and programming experiences through the lens of identity may offer an opportunity to explore the dynamic relati...
详细信息
Examining middle school students' computational identity development, personal, situational variables and programming experiences through the lens of identity may offer an opportunity to explore the dynamic relationship between individual, academic and social influences in computerscience and CI. The aim of this study is to examine the variables explaining middle school students' computational identities. The participants of this research consist of middle school students in Turkey. In this study, data were collected using a personal information form and 3 scales. As a result of the research, the programming actualization identity structure was prominent in middle school students. Students' programming variables and their levels are related to all aspects of CI. The results of the study have the potential to raise awareness among educators about which opportunities and experiences are more important to improve student participation and equity in computer and programming education.
暂无评论