Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site ucla-cs.ARPA Path: utzoo!watmath!clyde!cbosgd!hplabs!sdcrdcf!ucla-cs!rms From: rms@ucla-cs.UUCP Newsgroups: net.cse Subject: top-down editors and tracers for Pascal Message-ID: <9859@ucla-cs.ARPA> Date: Fri, 14-Mar-86 12:48:41 EST Article-I.D.: ucla-cs.9859 Posted: Fri Mar 14 12:48:41 1986 Date-Received: Sat, 15-Mar-86 21:10:28 EST Organization: UCLA Computer Science Department Lines: 39 [This article is really from John Pedersen] It seems that the frustrations students encounter in introductory computing courses, and the large amounts of time spent by students in these courses relative to others, might be decreased by two pieces of software: 1) An intelligent editor, that not only helps students with syntax but also promotes top-down design/implementation and discourages bad style. After asking for the author's name, the program purpose etc., the user has to type in the main program. The editor chides the user if it gets too long. When the user is finished, it checks the syntax and perhaps makes suggestions for improvement and can even foresee some logical problems (e.g. subscript out of range). It then looks for constants, variables and procedure/function calls, and puts in appropriate declarations in cooperation with the user. The editor automatically builds stubs for each proc/fn (that doesn't already exist). Then each subprogram body is treated in the same way in turn. The program can be run after each stage to see that the flow of control is as expected. The original user input for each block is not necessarily syntax-directed (the user gets a chance to make mistakes!) 2) A program tracing facility that shows the lines of source code as they are being executed (on one part of the screen) while variable and parameter values are given to the side. This is to help locate logical errors. Particular variables and/or subprograms can be isolated. This is different from a symbolic debugger in that the whole execution of the program can be seen "as it happens." QUESTION: Do such tools already exist (or something close), specifically for Pascal under Berkeley Unix (or System V)? I would greatly appreciate hearing from you (by mail) if you know of or, better yet, have experience with, such software, or if you would be interested in using it for classes (if nothing exists we might write it). John Pedersen, Dept of Math., Program in Computing, UCLA, L.A. Ca. 90024 (213)825-1917 pic.jfp@LOCUS.UCLA.EDU {ihnp4,ucbvax}!ucla-cs!pic.jfp