Abstract
This paper presents a set of structured control statements for APL and a preprocessor to implement them. The preprocessor translates structured APL functions into APL functions using the branch operator to replace the structured statements. The translation is based on finding keywords, such as IF and WHILE, appearing in syntactically valid places in the function. Since no modification of either the APL interpreter or APL syntax is required, the APL editor can be used to modify structured functions. The preprocesor also produces an indented listing that aids in the debugging of programs.
- Falkoff, A. D. and Iverson, K. E.,
APL\360 User's Manual , IBM Corporation, 1970.Google Scholar - Pakin, Sandra,
APL\360 Reference Manual , Science Research Associates, Inc., 2nd Edition, 1972.Google Scholar - Gilman, Leonard and Rose, Allen J.,
APL An Interactive Approach , 2nd Edition, John Wiley & Sons, Inc., 1976. Google ScholarDigital Library - Geller, Dennis P. and Freedman, Daniel P.,
Structured Programming in APL , Winthrop, 1976.Google Scholar - Abrams, Philip S., "An APL Machine", Stanford University Report, STAN-CS-70-158, March 1970.Google Scholar
- Kelley, R. A., "APLGOL, An Experimental Structured Programming Language",
IBM Journal of Research and Development , Vol 17, No 1, pp. 69--73, January 1973.Google ScholarDigital Library - Harris, Larry R., "A Logical Control Structure for APL",
APL 73 , pp.703--710.Google Scholar - Lim, A. L. and Lewis, G. R., "Towards Structured Programs in APL",
The Computer Journal , Vol 18 No 2, pp. 140--143, May 1975.Google ScholarCross Ref - Mason, J. A., "Some User-defined Control Functions for More Readable APL Programs",
ACM Sigplan Notices , Vol 10 No 8, pp. 11--19, August 1975. Google ScholarDigital Library - Dorocak, J. P., "APL Functions Which Enhance APL Branching",
APL 76 , pp. 99--105. Google ScholarDigital Library - Giloi, W. K. and Hoffmann, R., "Adding a Modern Control Structure to APL Without Changing the Syntax",
APL 76 , pp. 189--194. Google ScholarDigital Library - Iverson, K.,
Elementary Analysis , APL Press, 1976.Google Scholar - Mayforth, Rick, "An Alpha Omega Compiler",
APL News 3, February 1977.Google Scholar - Kemp, Franklin, "Design of a Structured APL",
APL Quote Quad , Vol 9 No 1, pp. 11--13, September 1978. Google ScholarDigital Library - Reeves, A. P. and Besemer, J., "Special Control Structures for APL",
APL Quote Quad , Vol 9 No 2, pp. 23--32, December 1978. Google ScholarDigital Library - Osborne, M. and Little, F., "An Implementation of Structured Programming in APL",
The Computer Journal , Vol 21 No 4, pp. 311--315, November 1978.Google ScholarCross Ref - Friedman, Frank L. and Koffman, Elliot B.,
Problem Solving and Structured Programming in Fortran , Addison Wesley, 1977. Google ScholarDigital Library - Friedman, Frank L., Goldenberg, Nancy K. and Rosenberg, Martin L., "NSFTRAN (Structured Fortran) User's Guide: Unlabeled Version", Computer Users Document Number 77-01, Temple University, 1977.Google Scholar
Xerox APL Language and Operations Reference Manual , Xerox Corporation, Publication No 90 19 31C, 1975.Google Scholar- Wiedman, Clark,
APL Version 2 Reference Manual , Control Data Corporation, Publication No 60454000, 1979.Google Scholar - Foster, Garth H., "What Lies Beyond the Branch Arrow?",
APL 75 , pp. 115--122. Google ScholarDigital Library - Falkoff, A. D. and Iverson, K. E., "The Design of APL",
IBM Journal of Research and Development , Vol 17 No 4, pp. 324--334, July 1973.Google ScholarDigital Library - Wiedmann, Clark, "Whither (Wither?) Control Structures?",
APL Quote Quad , Vol 9 No 2, pp. 21--22, December 1978. Google ScholarDigital Library - Dijkstra, E. W., "Goto Statement Considered Harmful",
Communications of the ACM , Vol 11 No 3, pp. 147--148, March 1968. Google ScholarDigital Library - Hopkins, M. E., "A Case for the Goto",
ACM Sigplan Notices , Vol 7 No 11, pp. 63--69, November 1972. Google ScholarDigital Library - "'The Goto Controversy' Rebuttals and Discussion",
ACM Sigplan Notices , Vol 7 no 11, pp. 70--91, November 1972.Google Scholar
Index Terms
- A structured APL preprocessor
Recommendations
Preprocessor
Encyclopedia of Computer ScienceA preprocessor is a language processor that accepts, as input, statements written in one computer language and writes to an output file statements that are acceptable to a similar but less complete language. Suppose, for example, that we have available ...
Design of a structured APL
A Structured APL language (SAPL) is suggested to provide structured programming in APL. The feature of SAPL is an APL preprocessor that interprets Edsger Dijkstra's IF-FI and DO-OD structured program constructs to achieve program flow in APL. The flavor ...
APLGOL-2 a structured programming language system for APL
APL '74: Proceedings of the sixth international conference on APLAPLGOL-2 works in conjunction with an APL system to provide structured programming facilities for APL. As a continuation of the original APLGOL work, it contains changes and additions to the APLGOL language. APLGOL procedures may exist in the same ...
Comments