This videotape demonstrates the functionality of Carnegie Mellon's GENIE programming environments. GENIE environment are publicly available on the Macintosh for Pascal and Richard Pattis' Karel the Robot teaching language. They are appropriate for use in introductory and intermediate computer programming methods courses at both the collegiate and secondary school levels. The Karel environment has been used successfully in group settings as early as the fourth grade.GENIE environments are built around syntax directed structure editors. [1, 2] Rather than edit only individual ASCII characters, the editors manipulate elements designated by a specific language grammar. Syntax errors are either prevented altogether or corrected immediately in context.Earlier structure editors often traded their syntax error prevention functionality for highly constrained and clumsy user interfaces. GENIE environments gracefully integrate text and structure editing, such that they have the "look and feel" of a good text editor, with the "intelligence" of a syntax directed structure editor.Through access to a common structure editor data base, GENIE environments combine many advanced tools for program design, comprehension and testing, all integrated in a single, uniform Macintosh user interface. Student program structures are maintained in "unparse" trees which can be mapped to and from text and graphics in many novel ways not constrained by a language's concrete syntax.[3] Different views of a common program database can be displayed and modified concurrently, emphasizing structure and design as well as implementation detail. [4] Similarly, arbitrary pieces of program structure can be hidden from view or displayed at will.At run time GENIE program can be traced at the level of expressions. Graphical data visualizations displaying arbitrary combinations of structured types are updated dynamically during run time and displayed in a representation of the program call stack. [5] Other notable GENIE features include an extensive contextual help system and a "notes" feature useful for project management, course assignments and "on-line" grading.User studies have been conducted at several universities and secondary schools throughout the United States. [6, 7, 8, 9] GENIE students in demanding courses have performed strikingly better than have students using other commercially available Macintosh software configurations.
This paper describes our experience in using situated programming to deliver modem computer science concepts in the introductory programming course at Carnegie Mellon University. We used an artificial life simulation and taught object-oriented programming as well as more traditional materird. The course was an experience, not an experimen~since many aspects of the course simultaneously changed from prior offerings. Nevertheless, what we saw was fundamentrd and potentially far-reaching.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.