Skip to main content
Log in

FLOW: A teaching language for computer programming in the humanities

  • Published:
Computers and the Humanities Aims and scope Submit manuscript

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Notes

  1. Report of the Conference on Computer Technology in the Humanities, David Ohle, ed. (English Dept., University of Kansas, Lawrence, KS 66044), pp. 41–47. The Committee on Courses and Curricula was chaired by Sally Sedelow. The author was a member of that committee.

  2. Summer Training Institute for Humanistic Computation, Floyd Horowitz, director, University of Kansas, Lawrence, KS 66044. The institute ran in two sessions from June 13 to August 18, 1970. The teachers were Sally Sedelow, Gerald Fisher, Jon Collins, and Jef Raskin.

  3. A recent study, Donald A. Norman's “Cognitive Organization and Learning” (available from the Center for Human Information Processing, University of California, San Diego, La Jolla, CA 92037), uses FLOW as a medium for studying the learning process itself. It was chosen for the study since “FLOW is unique in several ways. First, it has been designed to simplify the process of entering information into the computer. At any point in the program, only the typewriter keys which lead to legal commands are operative … In addition, by a system called typing amplification, whenever the user has typed a sufficient number of characters … the entire command appears on the screen without waiting for the student to finish. Thus, by these two features, the most common problems for the beginner are eliminated: typing errors and difficulty with the keyboard.”

  4. An excellent article on teaching programming is Niklaus Wirth's “Program Development by Stepwise Refinement,”Communications of the ACM, 14, 4 (April 1971), 221–227, who cogently asserts that “Programming is usually taught by examples. Experience shows that the success of a programming course critically depends on the choice of these examples. Unfortunately, they are too often selected with the prime intent to demonstrate what a computer can do. Instead, a main criterion … should be their suitability to exhibit … techniques.”

    Article  Google Scholar 

  5. Since this implementation in FORTRAN, FLOW has been implemented in NOVA assembly code, MICRO 800 assembler, BASIC and Algol. Given a specification for FLOW, a good programmer should be able to write an interpreter in a month. FLOW fits into 4k of 16-bit storage. Execution speed is irrelevent since “production runs” never occur. It does, however, run fast enough so that in the assembler versions there is no detectable pause between a command and its execution. The delay is under .1 second in the BASIC version on the NOVAs.

  6. “… the course has not been effective. Most significant, it has been batch-oriented while [the computing community at that school] has made routine use of time-sharing …”

  7. Documentation occurs both as an essay which describes a program, and as commentary that becomes part of the program itself. Different computer languages have more and less difficult ways of recording internal documentation: FLOW makes it particularly easy. Placing internal documentation is a part of the coding process.

  8. One way to achieve transparency is to use a mini-computer dedicated to FLOW for the first week or so. Once, when forced to use a large system, I convinced the system programmers to make FLOW available automatically whenever someone with my class code signed on. Such techniques are always possible, but may be easy or hard depending on the system and the cooperativeness of the computer center.

  9. A typical sequence of problems is given in Appendix II. The sequence changes from term to term to prevent ennui.

  10. Jef Raskin,Beginning Computer Programming for the Arts and Humanities, Manual G320-2044-0, available from the I.B.M. Corp., 112 East Post Rd., White Plains, N.Y. 10601.

  11. “Computer Ecology,”Datamation, 17, 11 (June 1971).

  12. The equipment includes three Data General mini-computers, one teletype, five Video Systems Corporation VST 1200 CRT terminals, a Tektronix 4002 interactive graphics terminal, a Hewlett Packard 7200A plotter and assorted interfaces and acoustic couplers. The computers have 12k 16-bit words of memory. As of September 1973 32k was added to each computer, plus an additional 12 Ann Arbor CRT terminals.

  13. National Science Foundation grant for improving undergraduate education in the sciences: in this case the science in question is, of course, Computer Science. The course in which FLOW is taught is considered alternative prerequisite to the Applied Physics department's beginning course.

  14. Even a brief listing of the more interesting projects would take up more space than can fit here.

  15. While the advocates of GO TO-less programming have some very strong points, with which I agree, most existing languages, especially BASIC and FORTRAN, require the student to be familiar with absolute and conditional jumps. The author's SIMPLE language is similar to FLOW, but is in the spirit of Dijkstra's observations about structured programming.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Raskin, J. FLOW: A teaching language for computer programming in the humanities. Comput Hum 8, 231–237 (1974). https://doi.org/10.1007/BF02402344

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02402344

Keywords

Navigation