David V. Moffat

  • Citations Per Year
Learn More
data types . An abstract type is a set of values and a se t of operations on those values . This seem s simple enough, but many students confus e the element type of a structure with th e structure itself . They thus view th e operations as being performed on th e elements . The evolution of the concept o f information hiding into that of dat a abstraction(More)
Pascal [I] introduced enumerations as a new programmer definable data type. Enumerations contribute substantially to the ease with which many problems can be solved, and to the readability of the resultant programs. But enumerations have been found to be as problematical as they are convenient, mainly because they do not fit into the usual scope rules. The(More)
Because all II0 has been moved to procedures whose syntax is limited to what the programmer is given, Modula has been left wlth only low-level I/0 syntax. The II0 procedures In most high-level languages have a macro-like behavior that allows parameters that are generic, varying in number, and defaulted. This behavior makes them convenient to use, hence the(More)
The criteria for judging the quality of programs have changed along with the changes in what we expect from programs. There have been many attempts to devise methods for producing programs that satisfy the new criteria. Among these attempts, the most generally accepted principles of structured programming are the most rational. But, although they provide an(More)
ill t~e iig~t of the v~rious deLinitions or the term '~type '~, tae presei~ce oi ta£ keyword TYPE in a Pascal program is not sui[icieht eviaence to prove that wi~at follows is indeed the derinitio1~ or a Le~ type. In many ways, the keyword MACRO or DLFIN£ wouia ~e just as appropriate. T~is is a detracto£'°s view of Pascal's type definitions. On the other(More)
Many persons have criticized—or defended— Pascal [1] for its lack of conformant arrays [2,3]. A conformant array is a formal parameter array whose bounds will conform to those of an actual parameter array. (The element types of both must be the same.) The lack of this feature is due to a desire for efficient compilation and execution. It is(More)
This paper summarizes a project to develop a computerized dictionary of American Sign Language. The topics discussed are: project scope and development, the resulting system of programs, applications in sign language studies, and problems for future development. Appendices describe details of thee notation used for sign descriptions, show an example(More)
o A compiler would "know" how to implement them, and so could produce more efficient code for them. The problem with language extension by way of programmer-defined procedures is that the compiler may use only general optimization techniques because it is not looking specifically for stacks and queues (for example). • Personnel time would be more(More)
The FORMPLOT system is a tool for developing accurate, complete data entry forms quickly and cheaply. This paper describes briefly the origins, goals, use, and implementation of FORMPLOT. The unexpected benefits resulting from the automation of forms design end the discussion.
  • 1