APG(ID:8187/)for Applications Program Generator PL/I-like IBM generator language for the system/7 RT OS, used for programming by example etc, similar approach to RPG IBM San Jose Lab Generated JCL code which was then run by the OS Drawback was the length of time to produce the code Related languages
References: In the early 1970?s, further reduction in hardware cost was reflected in systems such as the IBM System/7 for sensor based applications. A host program preparation facility was developed for generating the System17 real-time operating system, as well as application programs, on large systems such as System/360 for subsequent transmission to a System/7. In addition, the Application Program Generator (APG),3 a PL/I-like language, was developed to further reduce software effort. In spite of these developments, and the availability of specialized application packages for System/7, the installation effort was not reduced dramatically, in part because many customer installations could not justify a fulltime programmer. Thus computer vendors were forced to provide extensive software support. With the introduction of yet smaller and less expensive process control systems such as the IBM Seriedl, it has become mandatory to strive toward a programmerless environment in many applications so that the benefits of digital computer control can be provided with a reasonable software/hardware cost ratio. Extract: APG To avoid difficulties for the facilities engineer who is unfamiliar with programming, it is desirable to automate this process. The fill-in-the-blanks facility for provides some degree of automation for preparing the MSP/7 nucleus, with a reasonable degree of validity checking of answers. This facility was extended to tailor a complete application source program, step by step as follows: The application source, written in the high-level language of APG/7, is made into a ?prototype? which is processed according to the user?s answers to form a compilable source. Portions of the prototype are shown in Figure 1, and the program source after processing is illustrated in Figure 2. Dimensions are filled in, source code is eliminated, repeated, or retained, and variables are defined, all based on the user?s answers. A file containing the APG fill-in-the-blanks answers for generating the System/7 operating system macro source was itself made into a prototype, which was processed according to a minimum of user answers. This in effect allowed the creation of system parameters such as the number of multiprogram partitions, and it allowed specification of the storage location of programs based on user answers regarding machine memory size and whether the system incorporates disk storage. The job control language required to assemble the system supervisor and compile the application programs created in the first two steps was also made into a prototype file. This file was processed according to user answers, creating a system tailored to fit the application requirements based on the user?s machine configuration. In essence, the user answers questions on forms prepared for the application, enters the answers by means of a keyboard or punched cards, and follows a prescribed ten-step procedure to generate his system. The ten steps themselves could have been automated, but an inaccurate answer, recognized at the end of system generation, could require total system regeneration. In addition, it was decided to provide the user with system information between procedural steps. Further, a programmer can intercede between steps to add or modify application programs or modify the system nucleus. Depending on the complexity of the user?s application, total system generation, after specifying the user answers, took 5 to 12 hours of System/7 time. In almost all System/7 energy management installations, systems engineering assistance was required for system generation. When the stepwise procedure was followed, program generation and installation went smoothly. Difficulties arose when program modifications and functional extensions to the application were required, mainly because it was necessary to have operational knowledge of nucleus generation, system macro definitions, the job control procedure for the compiler, the assembler, the linkage editor, and the source language. During the 1974-1975 time period, three other operating systems were developed for the Systend7 by groups other than the MSP/7 development organization. These were the Event-Driven Executive (EDW7), the Application Program Generator (APG), and the Application Monitor. EDX/7 was developed at the IBM San Jose Research facility. It was originally designed as a laboratory-automation real-time system, but then was generalized into IBM?s first real-time interactive system. APG was developed at the Application Development Center in Palo Alto. It was primarily oriented toward the continuous process control environment. Its significance is that it was the first IBM real-time system to provide PL/I as the primary user interface to the real-time facilities [20]. The Application Monitor was developed in Boca Raton, and introduced several new concepts. Primary among these was the late binding of resources to an application program m1. |