posted on 2003-08-01, 00:00authored byJohn C Reynolds
Most programming systems which attempt to provide flexible and efficient data representation require the user to specify the range of variables, parameters, and functions by extensive and detailed data structure declarations. The purpose of this paper is to suggest that much of this declarative information is redundant, and can be inferred from the non-declarative portion of the program. Specifically, in the context of a restricted but non-trivial programming language, pure LISP, a method is given for constructing a data set description of the results of a function from a program for the function and a data set description of its arguments.