首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.

The demand for assembler language programmers has dropped dramatically over the past 20 years with the advent of structured programming languages and the accessibility of hardware features from high‐level languages. Nevertheless, a course in assembler language programming is often the first, and sometimes the only, introduction a student has to a machine's hardware. For this reason alone, assembler language programming courses should not be removed from a curriculum; instead, they should be kept and taught in conjunction with modern software engineering practices. This article describes an alternative approach to teaching assembler language programming. Whereas the students are still introduced to a machine and its assembler language, they are required to write several low‐level library routines they used in introductory courses (such as ACM CS1 and CS2). Furthermore, the S‐Machine's support software allows students to study the internals of an assembler, a librarian, and a linker.  相似文献   

2.
Abstract

During the past decade, computer scientists have developed dozens of concurrent (or parallel) programming languages. These languages hold the promise of opening up exciting new applications for computers. But that will happen only if people can effectively learn, use, and understand these new languages. To explore these issues, I developed a concurrent extension to Logo (called Multi‐Logo), and conducted an experimental study with a group of elementary school students. The students used MultiLogo to control simple robotic devices built out of LEGO bricks. In analyzing the children's work, I developed three primary categories of MultiLogo programming bugs: problem‐decomposition bugs, synchronization bugs, and object‐oriented bugs. Based on the results, I recommend ways to improve the design and teaching of concurrent programming languages for nonexperts.  相似文献   

3.
Functional programming has roots in Alonzo Church’s lambda calculus. A functional program is a collection of functions that work together to transform data. Though Lisp brought functional programming to public attention in the 1950s, it was John Bacus’s 1977 Turing Award lecture criticizing the limitations of imperative programming languages that led to a resurgence of of interest in this field. The 1970s and 1980s saw a number of advances, leading to the development of the language Haskell, which carefully combined ideas from many earlier languages. In this article, we explore some basic notions of functional programming via Haskell. Madhavan Mukund has been on the Computer Science faculty at Chennai Mathematical Institute since 1992, where he is currently Professor. His research interests are primarily in formal methods for specifying and verifying computing systems. He is the Secretary of the Indian Association for Research in Computing Science (IARCS) and the National Coordinator of the Indian Computing Olympiad.  相似文献   

4.

In a departure from the view that characterizes hypertext as a new writing paradigm based on old associationist ideas, Edward Barrett has proposed a model for hypertext that rejects cognitive and associationist language as both unnecessary and inaccurate. In this view, knowledge, reality, and even facts are community generated, “linguistic entities,” and hypertext supports the “social interface” rather than the “deep structure” of thought. This essay considers some of the premises of Barrett's proposal. A central issue is the rejection of the “authorial imperative” of structured information in favor of a view of writing as an open‐ended ever‐changing conversation in which readers and writers collaborate to discover—or generate—reality.  相似文献   

5.
Abstract

Tracing solutions to programming problems is a long‐standing technique used to reveal the details of a solution and to expose bugs in a program. Tracing can also help programmers build a model or representation of how a programming language responds to code. This article describes the LISP Evaluation Modeler (LEM), an on‐line tracing tool designed to (a) help novices form an understanding of and facility with the LISP evaluation process, and (b) assist all programmers in designing and debugging programs. An empirical study of LEM demonstrates its advantages for design, comprehension, and debugging and suggests ways in which LEM can help novices learning LISP.  相似文献   

6.

This article describes an educational tool, implemented in Prolog, that takes advantage of the connection between logic programming and databases to provide an evaluator for relational query languages. The tool utilizes a common data definition facility and provides the student with a choice of query languages: relational algebra, domain relational calculus, tuple relational calculus, and SQL. The students use the relational interpreter for a sequence of homework assignments that both provide invaluable feedback on each language and illustrate the differences between the languages.  相似文献   

7.
Abstract

To help introductory programming students gain an integrated, generative understanding of LISP, we designed, implemented, and evaluated the LISP Knowledge Integration Environment (LISP‐KIE). The LISP‐KIE reflected a conceptual framework which featured (a) scaffolding of students as they control their own learning rather than telling students what they should know and (b) activities engaging students in expert problem‐solving practices rather than exercises emphasizing syntax and small problems. We conducted two in‐depth studies and one comparison study to show that the LISP‐KIE fostered knowledge integration. By knowledge integration, we mean linked, organized, and connected information about such aspects of programming as design, testing, specific problem solutions, and self‐monitoring.  相似文献   

8.
Background and Context: The relationship between novices’ first programming language and their future achievement has drawn increasing interest owing to recent efforts to expand K–12 computing education. This article contributes to this topic by analyzing data from a retrospective study of more than 10,000 undergraduates enrolled in introductory computer science courses at 118 U.S. institutions of higher education.

Objective: We explored the relationship between students’ first programming languages and both their final grades in an introductory computer science course and their attitudes about programming.

Method: Multiple matching techniques compared those whose first language was graphical (e.g., Scratch), textual (e.g., Java), or absent prior to college.

Findings: Having any prior programming experience had positive effects on both attitudes about programming and grades in introductory computer science courses. Importantly, students whose first language was graphical had higher grades than did students whose first language was textual, when the languages were introduced in or before early adolescent years.

Implications: Learning any computer language is better than learning none. If programming is to be taught to students before early adolescence, it is advised to start with a graphical language. Future work should investigate the transition between different types of programming languages.  相似文献   


9.

This project is demonstrating the feasibility of using the object‐oriented paradigm to teach students software design in a nonprogramming context. The program, developed using principles of user‐based, prototyping design, teaches students to create responsibility‐driven designs of computer games. Investigations with high school students with little or no knowledge of computers and senior computer science majors have demonstrated that students can indeed learn to use Class‐Responsibility‐Collaborator (CRC) cards to produce creditable high‐level designs in a relatively short time whether or not they have programming experience and can generalize what they have learned to a new design. Although the computer science majors created more complete designs and demonstrated a deeper understanding of the design process than the high school students, these students still found the experience valuable. Both sample groups generally found the process interesting and relatively painless.  相似文献   

10.
The first part of this paper reviews the criteria offered by du Boulay, O'Shea and Monk (1981) for designing a coneeptual model of a programming environment for teaching novices programming. It argues that although the criteria offered, namely simplicity and visibility, are helpful, these criteria alone are not sufficient as they do not address the choice of which aspects of the conceptual model are to be presented to the learner. In order to address this issue it is necessary to carve up the conceptual model differently and to distinguish different aspects. One important aspect for novices is a functional view, as this will help them develop programming plans. A new complementary categorisation is offered which offers three views of the conceptual model: namely state, procedure and function, and adds a new criterion, namely consistency. Two languages designed for novices using the general criteria of du Boulay, O'Shea and Monk are then analysed in detail, firstly using du Boulay et al.'s criteria, and secondly using the proposed categorisation. Data from novices learning to program in the two languages shows that although the languages had been satisfactorily designed according to du Boulay et al.'s criteria, a number of learning difficulties remained, which were satisfactorily accounted for by the new categorisation.  相似文献   

11.
Abstract

Piaget's (1953, 1955) increasingly controversial claim that infant knowledge depends upon action need not be rejected, provided the mechanisms underlying infant ability are conceptualized appropriately in computational terms. Computational concepts solve many problems caused by Piaget's notions of perception, behaviour, schemes, reciprocal-assimilation and action. Artificial intelligence work on vision offers a way of explaining early perceptual abilities that is precise, internally coherent and able to encompass recent findings of innate organization. Concepts from the procedural programming languages offer a way of accounting for both internal and overt aspects of behaviour, and for the functional coordination of perception and behaviour that characterizes infant anion. This perspective challenges Piaget's view that development necessitates a radical reconstruction of action-based knowledge. Conceptualized computationally, perceptual-behavioural action can be seen to involve representation in a nontrivial sense. Restructuring of action mechanisms can account for some central phenomena of infant development.  相似文献   

12.
Abstract

The design of an effective interactive learning environment requires understanding the intricate relationships among people, tools, and problems. Many end‐users do not have the necessary skills, nor the time or patience, to compose programs from computer science‐sanctioned programming primitives. End‐users require environments that elevate the task of programming to the manipulation of components that are directly pertinent to the problems to be solved. This article introduces the Agentsheets programming substrate employed by designers to create interactive learning environments that are geared toward end‐users solving specific problems. A number of educational and industrial applications are used to illustrate the design and use of Agentsheets environments in domains such as art, artificial life, environmental design, games, kitchen design, and visual programming.  相似文献   

13.
Abstract

Programming is an activity through which students can learn about other domains, but the difficulty of programming diminishes its usefulness as a learning activity. One approach to facilitate the use of programming for learning is to view programming as a skill like those taught through apprenticeships, and to use the apprenticeship concept of scaffolding to facilitate doing and learning through programming. Scaffolding means providing modifiable support (through fading) that communicates process, coaches, and elicits articulation. Software‐realized scaffolding embeds scaffolding in a computer‐based environment. Emile implements software‐realized scaffolding to facilitate student learning of physics by facilitating students building computer‐based models and simulations. In this article, I present Emile's features as examples of software‐realized scaffolding, and I present the results of an evaluation of Emile's effectiveness. Students were able to use Emile to create fairly sophisticated programs and gained a qualitative understanding of kinematics in the process.  相似文献   

14.
Abstracts

English: HTML and JavaScript web pages interactively pose questions at random with multiple choice answers. Questions are ranked for difficulty based on prior student tests. During a quiz, the system tracks the percentage of correct answers and adjusts the difficulty of questions appropriately. A compiled BASIC program allows teachers to make specialized web quizzes from text files of questions and answers, without needing to know HTML, JavaScript and BASIC programming languages.  相似文献   

15.
Abstract

The development of websites was traditionally an occupation for those that possessed an in-depth knowledge of computer systems and programming languages. The advent of ‘user-friendly’ web development software in recent years has made this process less select. The Environmental Challenges in Farm Management project is an educational website developed by a team of non-web specialists both for third-level education and the agricultural community. This paper outlines the design, development and use of the site, and makes recommendations to those new to the task of putting web-based learning on-line, based on the experience gained during the project.  相似文献   

16.
17.
Abstract

The broadcast media challenge the survival of small languages as never before. To date the result largely has been negative, since broadcast media can penetrate to the remote areas that often shelter small languages and can invade even the strongest small‐language sanctuary ‐‐ the home. Where modern media have been enlisted to serve small languages, the uses to which the small languages have been put have been mostly serious and usually educational. This emphasis on the serious overlooks the strongest attributes of most small languages: their rich individuality as repositories of local flavour and folk tradition. These could be mustered for use in broadcasting to great effect and benefit in the support of beleaguered small languages.  相似文献   

18.

The Learning Enrichment Service (LES) is a multi‐optioned, research based model for bettor meeting the needs of gifted secondary school students. It acts as a school‐wide support system for teachers and students in both the regular classroom and specialized programs by screening, training, networking, counselling and exchanging information for enrichment programming.  相似文献   

19.
ABSTRACT

This paper reports the results of a one‐year project designed to develop the awareness of 291 student teachers in the area of electronic mail (e‐mail). The project was successful in increasing the active use of e‐mail and the general awareness of students: the number of active users rose from 17 to 33%, and the number of those able to explain e‐mail to a colleague rose from 12 to 45%. Case study material is presented to illustrate the conditions under which the development of e‐mail flourished with one particular group of modern languages student teachers. Conclusions are drawn concerning the utility of the cascade model of curriculum development in extending electronic communication.  相似文献   

20.

The purpose of this study was to examine the status of the humanities curriculum in the nation's community and junior colleges. Data on course offerings and enrollments in humanities’ courses (e.g., foreign languages, history, literature, philosophy) were obtained in spring 1975 and spring 1977 from a representative national sample of 178 two‐year colleges. Among the findings reported were: (1) during the same time period that two‐year colleges experienced a modest enrollment increase (7.4%), enrollments in 7 of the 12 humanities areas studied actually decreased; and (2) the humanities courses offered at most two‐year colleges were extremely limited both within and across subject areas. Recommendations on how humanities departments can increase their course enrollments are offered.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号