Technical Reports (CIS)

Document Type

Technical Report

Date of this Version

May 1982


University of Pennsylvania Department of Computer and Information Science Technical Report No. MS-CIS-82-144.


This document describes the algorithms and mechanisms of the MODEL Processor, which is a software system performing a program writing function. It also documents the program structure and procedures of the Processor. The MODEL Processor has been designed to automate the program design, coding and debugging of software development, based on a non-procedural specifications of a program module in the MODEL language. A program module is formally described and specified in the MODEL language, whose statements are then submitted to the Processor. The set of MODEL statements describing a program module is referred to as a specification. The Processor, performs the analysis (including checking for the completeness and consistency of the entire specification), program module design (including generating a flowchart-like sequence of events for the module), and code generation functions, thus replacing the tasks of an application programmer/coder. The Processor's capability to process a non-procedural specification language is built on application of graph theory to the analysis of such specification and to the program generation task.

Another important function of the Processor is to interact with the specifier to indicate necessary supplements or changes to the submitted statements.

The Processor produces a complete PL/1 program ready for compilation as well as various reports concerning the specification and the generated program. The Processor output reports include a listing of the specification, a cross-reference report, subscript range report, a flowchart-like report of the generated program, and a listing of the generated program.


automatic program generation, non-procedural languages, model, very high-level languages, program efficiency



Date Posted: 16 October 2007